From 0618fadff0d2e95716db801ef0c7a96ff9e1f20e Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期六, 22 六月 2024 21:52:00 +0800
Subject: [PATCH] 优化项目管理界面增删改

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Project/01-project/AddProjectDlg.cs |  132 ++++++++++++++++++++++++++++++++-----------
 1 files changed, 98 insertions(+), 34 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Project/01-project/AddProjectDlg.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Project/01-project/AddProjectDlg.cs
index e056b89..e8aff73 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Project/01-project/AddProjectDlg.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Project/01-project/AddProjectDlg.cs
@@ -1,7 +1,10 @@
-锘縰sing DevExpress.XtraEditors;
-using HStation.Dto;
+锘縰sing HStation.Dto;
 using HStation.WinFrmUI;
-using System;
+using HStation.WinFrmUI.Basic;
+using Microsoft.AspNetCore.Identity;
+using Newtonsoft.Json;
+using System.IO.Compression;
+using Yw;
 
 namespace ISupply.WinFrmUI
 {
@@ -12,42 +15,112 @@
             InitializeComponent();
         }
 
-        public event Func<AddXhsProjectInput, Task<bool>> ReloadEvent;
-
         private AddXhsProjectInput _AddXhsProjectInput = null;
 
-        //楠岃瘉
+        public event Func<AddXhsProjectInput, AddXhsProjectItemInput, AddXhsProjectItemModelInput, AddXhsProjectItemModelMapInput, Task<bool>> ReloadEvent;
+
+        //鍒濆鍖�
+        private void AddProjectDlg_Load(object sender, EventArgs e)
+        {
+            _AddXhsProjectInput = new AddXhsProjectInput();
+            this.webView21.Source = new Uri(AppDomain.CurrentDomain.BaseDirectory + "data/web/html/map_select.html");
+            this.navigationFrame.SelectedPage = navigationPageMapSelect;
+            layoutControlItemBack.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+        }
+
+        private void webView21_WebMessageReceived(object sender, Microsoft.Web.WebView2.Core.CoreWebView2WebMessageReceivedEventArgs e)
+        {
+            var j = JsonConvert.DeserializeObject<FixationReceivedViewModel>(e.WebMessageAsJson);
+            switch (j.Oper)
+            {
+                case "getLocation":
+                    var o = JsonConvert.DeserializeObject<AmapLocationViewModel>(j.Json);
+                    if (o == null)
+                        break;
+                    this.textEditAddress.Text = o.address;
+                    _AddXhsProjectInput.MapPosition = o.location.lng + "," + o.location.lat;
+                    break;
+            }
+        }
+
+        //涓嬩竴姝�
+        private void btnNextStep_Click(object sender, EventArgs e)
+        {
+            var currentindex = this.navigationFrame.SelectedPageIndex;
+            switch (currentindex)
+            {
+                case 0:
+
+                    this.navigationFrame.SelectedPage = navigationPageForm;
+                    stepProgressBar1.SelectedItemIndex = 1;
+                    layoutControlItemAddress.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+                    this.btnNextStep.Text = "瀹屾垚";
+                    break;
+
+                case 1:
+                    Finish();
+                    break;
+            }
+            layoutControlItemBack.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always;
+        }
+
+        //涓婁竴姝�
+        private void BtnBack_Click(object sender, EventArgs e)
+        {
+            var currentindex = this.navigationFrame.SelectedPageIndex;
+            switch (currentindex)
+            {
+                case 0:
+                    if (!Valid())
+                        return;
+                    break;
+
+                case 1:
+                    this.navigationFrame.SelectedPage = navigationPageMapSelect;
+                    stepProgressBar1.SelectedItemIndex = 0;
+                    layoutControlItemBack.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never;
+                    layoutControlItemAddress.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always;
+                    this.btnNextStep.Text = "涓嬩竴姝�>";
+                    break;
+            }
+        }
+
+        //鏁版嵁楠岃瘉
         private bool Valid()
         {
             this.dxErrorProvider1.ClearErrors();
-            if (string.IsNullOrEmpty(this.NameTextEdit.Text.Trim()))
+            if (string.IsNullOrEmpty(textEditAddress.Text.Trim()))
             {
-                this.dxErrorProvider1.SetError(this.NameTextEdit, "蹇呭~椤�");
+                this.dxErrorProvider1.SetError(this.textEditAddress, "蹇呭~椤�");
                 return false;
             }
-
-            var tagName = this.ModleTextEdit.Text.Trim();
-            if (string.IsNullOrEmpty(tagName))
-            {
-                this.dxErrorProvider1.SetError(this.ModleTextEdit, "閲嶅");
-                return false;
-            }
-
             return true;
         }
 
         //纭畾
-        private async void btnOk_Click(object sender, EventArgs e)
+        private async void Finish()
         {
-            if (!Valid())
+            if (!this.projectUserControl1.Valid())
                 return;
-            _AddXhsProjectInput = new AddXhsProjectInput();
-            _AddXhsProjectInput.Name = this.NameTextEdit.Text.Trim();
-            _AddXhsProjectInput.CustomerName = this.CustomerNameTextEdit.Text.Trim();
-            _AddXhsProjectInput.CreateTime = DateTime.Now;
-            _AddXhsProjectInput.GID = new Guid().ToString();
-            _AddXhsProjectInput.Description = this.DescriptionTextEdit.Text.Trim();
-            if (await this.ReloadEvent.Invoke(_AddXhsProjectInput))
+            var proresult = this.projectUserControl1.GetData(_AddXhsProjectInput);
+            proresult.Address = this.textEditAddress.Text.Trim();
+            var Item = new AddXhsProjectItemInput();
+            Item.Name = proresult.Name;
+            Item.Version = proresult.Version;
+            Item.TagName = proresult.TagName;
+            Item.CreateTime = proresult.CreateTime;
+            Item.Description = proresult.Description;
+            Item.CreateUserID = proresult.CreateUserID;
+            Item.Version = proresult.Version;
+            var Model = new AddXhsProjectItemModelInput();
+            Model.Name = proresult.Name;
+            Model.Version = proresult.Version;
+            Model.TagName = proresult.TagName;
+            Model.Description = proresult.Description;
+            var Mapinput = new AddXhsProjectItemModelMapInput();
+            Mapinput.UploadUserID = proresult.CreateUserID;
+            Mapinput.UploadTime = DateTime.Now;
+            if (await this.ReloadEvent.Invoke(proresult, Item, Model, Mapinput))
             {
                 MessageBoxHelper.ShowSuccess("娣诲姞鎴愬姛!");
             }
@@ -57,15 +130,6 @@
             }
             this.DialogResult = DialogResult.OK;
             this.Close();
-        }
-
-        //鍒濆鍖�
-        private void AddProjectDlg_Load(object sender, EventArgs e)
-        {
-        }
-
-        private void webView21_WebMessageReceived(object sender, Microsoft.Web.WebView2.Core.CoreWebView2WebMessageReceivedEventArgs e)
-        {
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3