From 3af811d30c93995e2500bdd2f3795be77cc1a519 Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期四, 19 十二月 2024 18:06:02 +0800
Subject: [PATCH] 水泵曲线修改

---
 WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs |  162 +++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 149 insertions(+), 13 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs b/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs
index 242087c..333efc5 100644
--- a/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Assets.Core/01-pump/07-PumpChart/PumpChartMainPage.cs
@@ -1,33 +1,129 @@
-锘縩amespace HStation.WinFrmUI
+锘縰sing DevExpress.XtraEditors;
+using HStation.Vmo;
+using Yw;
+
+namespace HStation.WinFrmUI
 {
     public partial class PumpChartMainPage : DocumentPage
     {
         public PumpChartMainPage()
         {
             InitializeComponent();
+            this.phartDiagramRelationListCtrl1.SelectedChangedEvent += PhartDiagramRelationListCtrl1_SelectedChangedEvent;
+        }
+
+        private AssetsPumpMainVmo _vmo;
+
+        private List<PhartDiagramRelationVmo> _allBindingList;
+        private PhartDiagramRelationVmo _relation = null;
+
+        public async void SetBindingData(AssetsPumpMainVmo vmo)
+        {
+            if (vmo == null)
+            {
+                return;
+            }
+            _vmo = vmo;
+            this.PageTitle.Caption = $"{vmo.Name}\r\n鎹熷け鏇茬嚎";
+            _allBindingList = new List<PhartDiagramRelationVmo>();
+            var allList = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance
+               .GetByObjectTypeAndObjectID(HStation.Assets.DataType.PumpMain, vmo.ID);
+            allList?.ForEach(x => _allBindingList.Add(x));
+            this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
+        }
+
+        //閫夋嫨鏀瑰彉
+        private void PhartDiagramRelationListCtrl1_SelectedChangedEvent(PhartDiagramRelationVmo obj)
+        {
+            _relation = obj;
+            LoadPhart(_relation);
+        }
+
+        //鍔犺浇鍥捐〃
+        private async void LoadPhart(PhartDiagramRelationVmo relation)
+        {
+            if (relation == null)
+            {
+                this.pumpChartViewCtrl1.SetBindingData(null, default);
+                return;
+            }
+            var vmo = await BLLFactory<Yw.BLL.PhartDiagramExtensions>.Instance.GetByID(relation.DiagramID);
+            this.pumpChartViewCtrl1.SetBindingData(vmo, _vmo.RatedSpeed);
         }
 
         //琛ㄦ牸
         private void barBtnImportByExcel_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
             var dlg = new ImportPumpPerform2dByExcelDlg();
-            dlg.SetBindingData();
             dlg.ReloadDataEvent += async (rhs) =>
-            {
-                var bll = new BLL.PhartDiagramRelation();
-                var id = await bll.InsertEx(rhs);
-                if (id > 0)
-                {
-                    return true;
-                }
-                return true;
-            };
+           {
+               var bll = new BLL.PhartDiagramRelation();
+               var id = await bll.InsertEx(rhs);
+               if (id > 0)
+               {
+                   var vmo = new PhartDiagramRelationVmo(rhs);
+                   var relationId = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.Insert(vmo);
+                   if (relationId > 0)
+                   {
+                       _allBindingList.Add(rhs);
+                       this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
+                       return true;
+                   }
+                   return false;
+               }
+               return false;
+           };
+            dlg.ShowDialog();
+        }
+
+        //鍥剧墖
+        private void barBtnImportByPicture_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            var dlg = new ImportPumpPerform2dByExcelDlg();
+            dlg.ReloadDataEvent += async (rhs) =>
+           {
+               var bll = new BLL.PhartDiagramRelation();
+               var id = await bll.InsertEx(rhs);
+               if (id > 0)
+               {
+                   var vmo = new PhartDiagramRelationVmo(rhs);
+                   var relationId = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.Insert(vmo);
+                   if (relationId > 0)
+                   {
+                       _allBindingList.Add(rhs);
+                       this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
+                       return true;
+                   }
+                   return false;
+               }
+               return false;
+           };
             dlg.ShowDialog();
         }
 
         //缂栬緫
-        private void barBtnEditChart_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        private async void barBtnEditChart_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
+            var vm = GetCurrentViewModel();
+            if (vm == null)
+            {
+                return;
+            }
+            var dlg = new EditAssetsPumpPerform2dDlg();
+            var vmo = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.GetExByID(vm.DiagramID);
+            dlg.SetBindingData(vmo);
+            dlg.ReloadDataEvent += async (rhs) =>
+           {
+               var bll = new BLL.PhartDiagramRelation();
+               var bol = await bll.Update(rhs);
+               if (bol)
+               {
+                   vm.Reset(rhs);
+                   return true;
+               }
+               return true;
+           };
+            dlg.ShowDialog();
         }
 
         //鍒悕
@@ -41,8 +137,48 @@
         }
 
         //鍒犻櫎
-        private void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        private async void barBtnDelete_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
         {
+            var vm = GetCurrentViewModel();
+            if (vm == null)
+            {
+                return;
+            }
+            var result = XtraMessageBox.Show("璇烽棶纭鍒犻櫎褰撳墠鏁版嵁鍚楋紵", "璇㈤棶", MessageBoxButtons.YesNo) == DialogResult.Yes;
+            if (!result)
+            {
+                return;
+            }
+            var bol = await BLLFactory<HStation.BLL.PhartDiagramRelation>.Instance.DeleteByID(vm.ID);
+            if (!bol)
+            {
+                TipFormHelper.ShowError("鍒犻櫎澶辫触锛�");
+                return;
+            }
+            _allBindingList.Remove(vm);
+            this.phartDiagramRelationListCtrl1.SetBindingData(_allBindingList);
+            TipFormHelper.ShowSucceed("鍒犻櫎鎴愬姛锛�");
+        }
+
+        //鑾峰彇褰撳墠
+        private PhartDiagramRelationVmo GetCurrentViewModel()
+        {
+            if (_allBindingList == null)
+            {
+                TipFormHelper.ShowError("鏁版嵁鍒濆鍖栭敊璇紒");
+                return null;
+            }
+            if (_allBindingList.Count < 1)
+            {
+                TipFormHelper.ShowInfo("鏃犳暟鎹紒");
+                return null;
+            }
+            if (_relation == null)
+            {
+                TipFormHelper.ShowWarn("璇烽�夋嫨鏁版嵁琛岋紒");
+                return null;
+            }
+            return _relation;
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3