From 151618c7e9ab27e8349851d302daff0e20cb130a Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期二, 13 八月 2024 18:16:14 +0800
Subject: [PATCH] 添加项目管理增删改

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/03-mgr/XhsProjectMgrPage.cs |   56 ++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 52 insertions(+), 4 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/03-mgr/XhsProjectMgrPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/03-mgr/XhsProjectMgrPage.cs
index 83c8aeb..eeddf2d 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/03-mgr/XhsProjectMgrPage.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/02-project/03-mgr/XhsProjectMgrPage.cs
@@ -16,7 +16,7 @@
 
         private List<XhsProjectMgrViewModel> _allProjectList = null;
 
-        private BLL.XhsProject _Bll = null;
+        private BLL.XhsProjectExtensions _bll = null;
 
         /// <summary>
         /// 鍒濆鍖栨暟鎹簮
@@ -24,8 +24,8 @@
         public override async void InitialDataSource()
         {
             base.InitialDataSource();
-            _Bll = new BLL.XhsProject();
-            var allProjectList = await _Bll.GetAll();
+            _bll = new BLL.XhsProjectExtensions();
+            var allProjectList = await _bll.GetAll();
             _allProjectList = new List<XhsProjectMgrViewModel>();
             if (allProjectList != null && allProjectList.Count > 0)
             {
@@ -131,17 +131,65 @@
         private void barBtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
             var dlg = new AddProjectDlg();
+            dlg.ReloadDataEvent += async (rhs) =>
+            {
+                var bll = new BLL.XhsProjectExtensions();
+                var id = await bll.Insert(rhs);
+                if (id > 0)
+                {
+                    rhs.ID = id;
+                    var vmo = await _bll.GetByID(id);
+                    _allProjectList.Add(new XhsProjectMgrViewModel(vmo));
+                    this.xhsProjectMgrViewModelBindingSource.ResetBindings(false);
+                    return true;
+                }
+                return false;
+            };
             dlg.ShowDialog();
         }
 
         //缂栬緫
         private void barBtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
+            var currentVm = this.GetCurrentViewModel();
+            var dlg = new EditProjectDlg();
+            dlg.SetBindingData(currentVm.ID);
+            dlg.ReloadDataEvent += async (rhs) =>
+            {
+                if (await _bll.Update(rhs))
+                {
+                    currentVm.Reset(rhs);
+                    this.xhsProjectMgrViewModelBindingSource.ResetBindings(false);
+                    return true;
+                }
+                return false;
+            };
+            dlg.ShowDialog();
         }
 
         //鍒犻櫎
-        private void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        private async void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
+            var currentVm = GetCurrentViewModel();
+            if (currentVm == null)
+            {
+                MessageBoxHelper.ShowWarning("璇烽�夋嫨鏁版嵁琛岋紒");
+                return;
+            }
+            if (MessageBoxHelper.IsClickOk($"纭鍒犻櫎鏁版嵁琛�?", "鎻愮ず"))
+                return;
+            var groupresult = await _bll.DeleteByID(currentVm.ID);
+            if (groupresult)
+            {
+                _allProjectList.Remove(currentVm);
+                this.xhsProjectMgrViewModelBindingSource.ResetBindings(false);
+                MessageBoxHelper.ShowSuccess($"鍒犻櫎鎴愬姛!");
+            }
+            else
+            {
+                MessageBoxHelper.ShowError($"鍒犻櫎澶辫触!");
+                return;
+            }
         }
 
         #endregion 鍩虹鎿嶄綔

--
Gitblit v1.9.3