From 81819f13e1e3a49bf8456051ec0f0b51e3f10821 Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期一, 23 九月 2024 12:20:33 +0800
Subject: [PATCH] 解析优化

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/04-dlg/EditProjectDlg.cs |   91 ++++++++++++++++++++++++++++++++++-----------
 1 files changed, 69 insertions(+), 22 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/04-dlg/EditProjectDlg.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/04-dlg/EditProjectDlg.cs
index f524142..0b34beb 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/04-dlg/EditProjectDlg.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/04-dlg/EditProjectDlg.cs
@@ -1,4 +1,4 @@
-锘縰sing HStation.BLL;
+锘縰sing HStation.Vmo;
 
 namespace HStation.WinFrmUI.Xhs
 {
@@ -7,30 +7,73 @@
         public EditProjectDlg()
         {
             InitializeComponent();
+            this.Load += AddProjectDlg_Load;
         }
 
-        public event Func<Vmo.Xhs.XhsProjectExtensions, Task<bool>> ReloadDataEvent;
+        private async void AddProjectDlg_Load(object sender, EventArgs e)
+        {
+            this.mapSetSimpleMarkerContainer1.LoadCompletedEvent += MapSetSimpleMarkerContainer1_LoadCompletedEvent;
+            this.mapSetSimpleMarkerContainer1.SetMarkerEvent += MapSetSimpleMarkerContainer1_SetMarkerEvent;
+            await this.mapSetSimpleMarkerContainer1.InitialContainer();
+        }
 
-        private Vmo.Xhs.XhsProjectExtensions _projectExtensions;
+        public event Func<XhsProjectExtensionsVmo, Yw.Vmo.MapInfoVmo, Task<bool>> ReloadDataEvent;
+
+        private XhsProjectExtensionsVmo _xhsProjectExtensions;
+
+        private Yw.Model.Map.Marker _maker = null; //鍦板浘鐐逛俊鎭�
+
+        private Yw.Vmo.MapInfoVmo _mapinfo = null; //鍦板浘淇℃伅
 
         public async void SetBindingData(long ID)
         {
-            var bll = new XhsProjectExtensions();
+            var bll = new BLL.XhsProjectExtensions();
             var select = await bll.GetByID(ID);
-            if (select == null)
-                return;
-            _projectExtensions = select;
-            this.TextAdress.Text = _projectExtensions.Address;
-            this.TextCustomerName.Text = _projectExtensions.TagName;
-            this.TextDescription.Text = _projectExtensions.Description;
-            this.TextProjectName.Text = _projectExtensions.Name;
-            this.TextTagName.Text = _projectExtensions.TagName;
+            if (select == null) return;
+            _xhsProjectExtensions = select;
+            this.TextProjectName.Text = _xhsProjectExtensions.Name;
+            this.TextCustomerName.Text = _xhsProjectExtensions.Customer;
+            this.TextDescription.Text = _xhsProjectExtensions.Description;
+            this.TextTagName.Text = _xhsProjectExtensions.TagName;
+            var mapinfo = await new Yw.BLL.MapInfo().Get(HStation.Xhs.DataType.XhsProject, ID, Yw.Map.Kind.Gaodei, Yw.Map.Purpose.Location);
+            if (mapinfo != null)
+            {
+                _mapinfo = mapinfo;
+                this.TextAddress.Text = Yw.Model.Map.Marker.ToModel(_mapinfo.Position).Address;
+            }
         }
 
         //鏁版嵁楠岃瘉
         private bool Valid()
         {
+            this.dxErrorProvider1.ClearErrors();
+            if (string.IsNullOrEmpty(TextProjectName.Text.Trim()))
+            {
+                this.dxErrorProvider1.SetError(this.TextProjectName, "蹇呭~椤�");
+                return false;
+            }
+            if (string.IsNullOrEmpty(TextCustomerName.Text.Trim()))
+            {
+                this.dxErrorProvider1.SetError(this.TextCustomerName, "蹇呭~椤�");
+                return false;
+            }
             return true;
+        }
+
+        //鍦板浘鍔犺浇瀹屾垚
+        private async void MapSetSimpleMarkerContainer1_LoadCompletedEvent()
+        {
+            if (_mapinfo != null)
+            {
+                await this.mapSetSimpleMarkerContainer1.LoadMarker(Yw.Model.Map.Marker.ToModel(_mapinfo.Position));
+            }
+        }
+
+        //璁剧疆浣嶇疆
+        private void MapSetSimpleMarkerContainer1_SetMarkerEvent(Yw.Model.Map.Marker obj)
+        {
+            _maker = obj;
+            this.TextAddress.EditValue = obj.Address;
         }
 
         //纭畾
@@ -38,26 +81,30 @@
         {
             if (!Valid())
                 return;
-            _projectExtensions.Address = this.TextAdress.Text.Trim();
-            _projectExtensions.Customer = this.TextCustomerName.Text.Trim();
-            _projectExtensions.Description = this.TextDescription.Text.Trim();
-            _projectExtensions.Name = this.TextProjectName.Text.Trim();
-            _projectExtensions.TagName = this.TextTagName.Text.Trim();
-            _projectExtensions.SiteList = new List<Vmo.Xhs.XhsProjectSite>
+            _xhsProjectExtensions.Address = this.TextAddress.Text.Trim();
+            _xhsProjectExtensions.Customer = this.TextCustomerName.Text.Trim();
+            _xhsProjectExtensions.Description = this.TextDescription.Text.Trim();
+            _xhsProjectExtensions.Name = this.TextProjectName.Text.Trim();
+            _xhsProjectExtensions.TagName = this.TextTagName.Text.Trim();
+            _xhsProjectExtensions.SiteList = new List<XhsProjectSiteVmo>
             {
-                new Vmo.Xhs.XhsProjectSite
+                new XhsProjectSiteVmo
                 {
                     Name=this.TextProjectName.Text,
                     Description=this.TextDescription.Text,
                 }
             };
-            if (await this.ReloadDataEvent.Invoke(_projectExtensions))
+            if (_maker != null)
             {
-                MessageBoxHelper.ShowSuccess("淇敼鎴愬姛!");
+                _mapinfo.Position = _maker.ToJson();
+            }
+            if (await this.ReloadDataEvent.Invoke(_xhsProjectExtensions, _mapinfo))
+            {
+                TipFormHelper.ShowSucceed("淇敼鎴愬姛!");
             }
             else
             {
-                MessageBoxHelper.ShowError("淇敼澶辫触!");
+                TipFormHelper.ShowError("淇敼澶辫触!");
             }
             this.DialogResult = DialogResult.OK;
             this.Close();

--
Gitblit v1.9.3