From e411302bca8857e102443a5250c82b9580ef07a3 Mon Sep 17 00:00:00 2001
From: duheng <2286773002@qq.com>
Date: 星期五, 28 三月 2025 10:49:48 +0800
Subject: [PATCH] 修改成套设备增加逻辑

---
 WinFrmUI/PBS.WinFrmUI/02-facility/FacilityMgrPage.cs |  176 ++++++++++++++++++++++++++++------------------------------
 1 files changed, 85 insertions(+), 91 deletions(-)

diff --git a/WinFrmUI/PBS.WinFrmUI/02-facility/FacilityMgrPage.cs b/WinFrmUI/PBS.WinFrmUI/02-facility/FacilityMgrPage.cs
index 06b65ab..b27565a 100644
--- a/WinFrmUI/PBS.WinFrmUI/02-facility/FacilityMgrPage.cs
+++ b/WinFrmUI/PBS.WinFrmUI/02-facility/FacilityMgrPage.cs
@@ -1,5 +1,6 @@
 锘縰sing DevExpress.Utils.DragDrop;
 using DevExpress.XtraEditors;
+using HStation.WinFrmUI;
 using Yw;
 using Yw.WinFrmUI;
 
@@ -10,6 +11,8 @@
         public FacilityMgrPage()
         {
             InitializeComponent();
+            this.gridView1.SetNormalView(30);
+            behaviorManager1.Detach<DragDropBehavior>(gridView1);
         }
 
         private List<FacilityViewModel> _allBindingList;
@@ -32,86 +35,54 @@
                     _allBindingList.Add(new FacilityViewModel(item));
                 }
             }
-            this.placeViewModelBindingSource.DataSource = _allBindingList;
-            this.placeViewModelBindingSource.ResetBindings(false);
+            this.facilityViewModelBindingSource.DataSource = _allBindingList;
+            this.facilityViewModelBindingSource.ResetBindings(false);
+            var allFacility = await new PBS.BLL.Place().GetAll();
+            repositoryItemTreeListLookUpEdit1.DataSource = allFacility;
         }
 
-        //鏂板灏忓尯
-        private void btnAddBuilding_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        //鏂板
+        private void BtnAdd_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
-            /*           var dlg = new AddPlaceDlg();
-                       dlg.SetBindingData("Build");
-                       dlg.ReloadDataEvent += async (Vmo) =>
-                       {
-                           var id = await _facilityBll.Insert(Vmo);
-                           if (id > 0)
-                           {
-                               _allBindingList.Add(new PlaceViewModel(Vmo));
-                               this.placeViewModelBindingSource.ResetBindings(false);
-                               return true;
-                           }
-                           return false;
-                       };
-                       dlg.ShowDialog();*/
+            var dlg = new AddFacilityDlg();
+            dlg.SetBindingData();
+            dlg.ReloadDataEvent += async (vmo) =>
+           {
+               var id = await _facilityBll.Insert(vmo);
+               if (id > 0)
+               {
+                   vmo.ID = id;
+                   _allBindingList.Add(new FacilityViewModel(vmo));
+                   this.facilityViewModelBindingSource.ResetBindings(false);
+                   return true;
+               }
+               return false;
+           };
+            dlg.ShowDialog();
         }
 
-        //鏂板瀛︽牎
-        private void btnAddschool_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        //缂栬緫
+        private void barBtnEdit_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
-            /*            var dlg = new AddPlaceDlg();
-                        dlg.SetBindingData("School");
-                        dlg.ReloadDataEvent += async (Vmo) =>
-                        {
-                            var id = await _facilityBll.Insert(Vmo);
-                            if (id > 0)
-                            {
-                                _allBindingList.Add(new PlaceViewModel(Vmo));
-                                this.placeViewModelBindingSource.ResetBindings(false);
-                                return true;
-                            }
-                            return false;
-                        };
-                        dlg.ShowDialog();*/
-        }
-
-        //鏂板鍖婚櫌
-        private void btnAddHospital_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
-        {
-            /*            var dlg = new AddPlaceDlg();
-                        dlg.SetBindingData("Hospital");
-                        dlg.ReloadDataEvent += async (Vmo) =>
-                        {
-                            var id = await _facilityBll.Insert(Vmo);
-                            if (id > 0)
-                            {
-                                _allBindingList.Add(new PlaceViewModel(Vmo));
-                                this.placeViewModelBindingSource.ResetBindings(false);
-                                return true;
-                            }
-                            return false;
-                        };
-                        dlg.ShowDialog();
-            */
-        }
-
-        //鏂板鍟嗛摵
-        private void btnAddShop_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
-        {
-            /*            var dlg = new AddPlaceDlg();
-                        dlg.SetBindingData("Shop");
-                        dlg.ReloadDataEvent += async (Vmo) =>
-                        {
-                            var id = await _facilityBll.Insert(Vmo);
-                            if (id > 0)
-                            {
-                                _allBindingList.Add(new PlaceViewModel(Vmo));
-                                this.placeViewModelBindingSource.ResetBindings(false);
-                                return true;
-                            }
-                            return false;
-                        };
-                        dlg.ShowDialog();
-            */
+            var vm = this.gridView1.GetCurrentViewModel(_allBindingList);
+            if (vm == null)
+            {
+                TipFormHelper.ShowWarn("璇烽�夋嫨鏁版嵁琛�");
+            }
+            var dlg = new EditFacilityDlg();
+            dlg.SetBindingData(vm.Vmo);
+            dlg.ReloadDataEvent += async (vmo) =>
+            {
+                var bol = await _facilityBll.Update(vmo);
+                if (bol)
+                {
+                    vm.Resert(vmo);
+                    this.facilityViewModelBindingSource.ResetBindings(false);
+                    return true;
+                }
+                return false;
+            };
+            dlg.ShowDialog();
         }
 
         //鍒犻櫎
@@ -134,7 +105,7 @@
                 return;
             }
             _allBindingList.Remove(vm);
-            this.placeViewModelBindingSource.ResetBindings(false);
+            this.facilityViewModelBindingSource.ResetBindings(false);
             TipFormHelper.ShowSucceed("鍒犻櫎鎴愬姛锛�");
         }
 
@@ -152,14 +123,14 @@
 
         private void barCkDrag_CheckedChanged(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
-            SetDragEnable(this.barCkDrag.Checked);
-        }
-
-        //璁剧疆鎷栨嫿鍙敤鎬�
-        private void SetDragEnable(bool allowArag)
-        {
-            var be = this.behaviorManager1.GetBehavior<DevExpress.Utils.DragDrop.DragDropBehavior>(this.gridView1);
-            be.Properties.AllowDrag = allowArag;
+            if (barCkDrag.Checked)
+            {
+                behaviorManager1.Attach<DragDropBehavior>(this.gridView1);
+            }
+            else
+            {
+                behaviorManager1.Detach<DragDropBehavior>(gridView1);
+            }
         }
 
         private async void dragDropEvents1_DragDrop(object sender, DevExpress.Utils.DragDrop.DragDropEventArgs e)
@@ -264,13 +235,13 @@
                 TipFormHelper.ShowWarn("涓婄Щ澶辫触锛�");
                 return;
             }
-            var current = this.gridView1.GetRow(rowHandle) as PlaceViewModel;
+            var current = this.gridView1.GetRow(rowHandle) as FacilityViewModel;
             if (current == null)
             {
                 return;
             }
             var prevHandle = rowHandle - 1;
-            var prev = this.gridView1.GetRow(prevHandle) as PlaceViewModel;
+            var prev = this.gridView1.GetRow(prevHandle) as FacilityViewModel;
             if (prev == null)
             {
                 return;
@@ -288,8 +259,8 @@
             current.SortCode = prev.SortCode;
             prev.SortCode = sortCode;
             _allBindingList = _allBindingList.OrderBy(x => x.SortCode).ToList();
-            this.placeViewModelBindingSource.DataSource = _allBindingList;
-            this.placeViewModelBindingSource.ResetBindings(false);
+            this.facilityViewModelBindingSource.DataSource = _allBindingList;
+            this.facilityViewModelBindingSource.ResetBindings(false);
             this.gridView1.FocusedRowHandle = prevHandle;
         }
 
@@ -312,13 +283,13 @@
                 TipFormHelper.ShowWarn("涓嬬Щ澶辫触锛�");
                 return;
             }
-            var current = this.gridView1.GetRow(rowHandle) as PlaceViewModel;
+            var current = this.gridView1.GetRow(rowHandle) as FacilityViewModel;
             if (current == null)
             {
                 return;
             }
             var nextHandle = rowHandle + 1;
-            var next = this.gridView1.GetRow(nextHandle) as PlaceViewModel;
+            var next = this.gridView1.GetRow(nextHandle) as FacilityViewModel;
             if (next == null)
             {
                 return;
@@ -336,9 +307,32 @@
             current.SortCode = next.SortCode;
             next.SortCode = sortCode;
             _allBindingList = _allBindingList.OrderBy(x => x.SortCode).ToList();
-            this.placeViewModelBindingSource.DataSource = _allBindingList;
-            this.placeViewModelBindingSource.ResetBindings(false);
+            this.facilityViewModelBindingSource.DataSource = _allBindingList;
+            this.facilityViewModelBindingSource.ResetBindings(false);
             this.gridView1.FocusedRowHandle = nextHandle;
         }
+
+        private void barBtnUpdateUseStatus_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            var vm = this.gridView1.GetCurrentViewModel(_allBindingList);
+            if (vm == null)
+            {
+                return;
+            }
+            var dlg = new SetUseStatusDlg();
+            dlg.SetBindingData((Yw.Model.eUseStatus)vm.UseStatus);
+            dlg.ReloadDataEvent += async (status) =>
+            {
+                var bol = await new PBS.BLL.Facility().UpdateUseStatus(vm.ID, status);
+                if (bol)
+                {
+                    vm.UseStatus = (Yw.Vmo.eUseStatus)(int)status;
+                    this.gridView1.RefreshRow(this.gridView1.FocusedRowHandle);
+                    return true;
+                }
+                return false;
+            };
+            dlg.ShowDialog();
+        }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3