From f04e6ed843d66c22e08132ca23d2193d6800905c Mon Sep 17 00:00:00 2001
From: duheng <2784771470@qq.com>
Date: 星期四, 26 九月 2024 11:51:19 +0800
Subject: [PATCH] 增加窗体图标

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs |  142 ++++++++++++++++++++++-------------------------
 1 files changed, 67 insertions(+), 75 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs
index 0742d13..535af31 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs
@@ -10,38 +10,32 @@
         public XhsProjectSimulationPropertyCtrl()
         {
             InitializeComponent();
-            this.hydroParterPropertyCtrl1.PropertyValueChangedEvent += HydroParterPropertyCtrl1_PropertyValueChangedEvent;
+
+            this.hydroParterPropertyCtrl1.GetHydroInfoEvent += HydroParterPropertyCtrl1_GetHydroInfoEvent;
             this.hydroParterPropertyCtrl1.SelectCurveEvent += HydroParterPropertyCtrl1_SelectCurveEvent;
             this.hydroParterPropertyCtrl1.SelectPatternEvent += HydroParterPropertyCtrl1_SelectPatternEvent;
+            this.hydroParterPropertyCtrl1.PropertyValueChangedEvent += HydroParterPropertyCtrl1_PropertyValueChangedEvent;
+            this.hydroParterPropertyCtrl1.PropertyValueChangingEvent += HydroParterPropertyCtrl1_PropertyValueChangingEvent;
         }
-
-        private Yw.Model.HydroModelInfo _hydroInfo = null;
 
         /// <summary>
-        /// 缁戝畾鏁版嵁
+        /// 鑾峰彇姘村姏淇℃伅浜嬩欢
         /// </summary>
-        public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo)
-        {
-            _hydroInfo = hydroInfo;
-        }
+        public event Func<Yw.Model.HydroModelInfo> GetHydroInfoEvent;
 
         /// <summary>
         /// 閫夋嫨缁勪欢
         /// </summary>
         public void SelectParter(long id)
         {
-            if (_hydroInfo == null)
+            var hydroInfo = GetHydroInfoEvent?.Invoke();
+            if (hydroInfo == null)
             {
                 this.hydroParterPropertyCtrl1.SelectedObject = null;
                 return;
             }
-            var allParterList = _hydroInfo.GetAllParters();
+            var allParterList = hydroInfo.GetAllParters();
             var parter = allParterList.Find(x => x.ID == id);
-            if (parter == null)
-            {
-                this.hydroParterPropertyCtrl1.SelectedObject = null;
-                return;
-            }
             var vm = Yw.WinFrmUI.HydroParterPropertyViewModelBuilder.CreateViewModel(parter, allParterList);
             this.hydroParterPropertyCtrl1.SelectedObject = vm;
         }
@@ -51,18 +45,14 @@
         /// </summary>
         public void SelectParter(string code)
         {
-            if (_hydroInfo == null)
+            var hydroInfo = GetHydroInfoEvent?.Invoke();
+            if (hydroInfo == null)
             {
                 this.hydroParterPropertyCtrl1.SelectedObject = null;
                 return;
             }
-            var allParterList = _hydroInfo.GetAllParters();
+            var allParterList = hydroInfo.GetAllParters();
             var parter = allParterList.Find(x => x.Code == code);
-            if (parter == null)
-            {
-                this.hydroParterPropertyCtrl1.SelectedObject = null;
-                return;
-            }
             var vm = Yw.WinFrmUI.HydroParterPropertyViewModelBuilder.CreateViewModel(parter, allParterList);
             this.hydroParterPropertyCtrl1.SelectedObject = vm;
         }
@@ -74,11 +64,6 @@
         /// <param name="allParterList"></param>
         public void SelectParter(Yw.Model.HydroParterInfo parter, List<Yw.Model.HydroParterInfo> allParterList)
         {
-            if (parter == null)
-            {
-                this.hydroParterPropertyCtrl1.SelectedObject = null;
-                return;
-            }
             var vm = Yw.WinFrmUI.HydroParterPropertyViewModelBuilder.CreateViewModel(parter, allParterList);
             this.hydroParterPropertyCtrl1.SelectedObject = vm;
         }
@@ -97,74 +82,69 @@
             this.hydroParterPropertyCtrl1.UpdateRows();
         }
 
-        //灞炴�у彂鐢熸敼鍙�
-        private void HydroParterPropertyCtrl1_PropertyValueChangedEvent(HydroParterPropertyViewModel obj)
+        //鑾峰彇姘村姏淇℃伅浜嬩欢
+        private Yw.Model.HydroModelInfo HydroParterPropertyCtrl1_GetHydroInfoEvent()
         {
-            if (obj == null)
-            {
-                return;
-            }
-            if (_hydroInfo == null)
-            {
-                return;
-            }
-            var allParterList = _hydroInfo.GetAllParters();
-            var parter = allParterList?.Find(x => x.ID == obj.ID);
-            if (parter == null)
-            {
-                return;
-            }
-            parter.UpdateProperty(allParterList, obj);
+            var hydroInfo = GetHydroInfoEvent?.Invoke();
+            return hydroInfo;
         }
 
         //閫夋嫨鏇茬嚎
-        private void HydroParterPropertyCtrl1_SelectCurveEvent(HydroParterPropertyViewModel propViewModel, string curveType)
+        private bool HydroParterPropertyCtrl1_SelectCurveEvent(HydroParterPropertyViewModel propViewModel, string curveType)
         {
-            //杩欓噷 dbid modeltype
-            //杩斿洖 dbid curveid 鏇茬嚎淇℃伅
             switch (curveType)
             {
+                case Yw.WinFrmUI.HydroCurve.Pump:
+                    {
+                        var hydroInfo = GetHydroInfoEvent?.Invoke();
+                        if (hydroInfo == null)
+                        {
+                            return false;
+                        }
+                        var vmPump = propViewModel as HydroPumpPropertyViewModel;
+                        var modelType = vmPump.ModelType;
+                        var dbId = vmPump.DbId;
+                        var curveDbId = string.Empty;
+                        if (!string.IsNullOrEmpty(vmPump.CurveQH))
+                        {
+                            var curveQh = hydroInfo.Curves?.Find(x => x.Code == vmPump.CurveQH);
+                            curveDbId = curveQh?.DbId;
+                        }
+                        var dlg = new PumpMainCurveChoiceDlg();
+                        dlg.SetBindingData(dbId, modelType, curveDbId);
+                        dlg.SelectCurveInfoEvent += (dbId, curveId, curveInfo) =>
+                        {
+                        };
+                        dlg.ShowDialog();
+                        return true;
+                    }
                 case Yw.WinFrmUI.HydroCurve.PumpQH:
                     {
-                        var pumpPropertyViewModel = propViewModel as HydroPumpPropertyViewModel;
-                        var dbId = pumpPropertyViewModel.DbId;
-                        var modelType = pumpPropertyViewModel.ModelType;
-                        var dlg = new PumpMainCurveChoiceDlg();
-                        dlg.SetBindingData(dbId, modelType);
-                        dlg.CurveinfoEvent += (dbid, curveid, curveinfo) =>
-                        {
-                        };
-                        dlg.ShowDialog();
+                        return false;
                     }
-                    break;
-
+                case Yw.WinFrmUI.HydroCurve.PumpQP:
+                    {
+                        return false;
+                    }
                 case Yw.WinFrmUI.HydroCurve.PumpQE:
                     {
-                        var pumpPropertyViewModel = propViewModel as HydroPumpPropertyViewModel;
-                        var dbId = pumpPropertyViewModel.DbId;
-                        var modelType = pumpPropertyViewModel.ModelType;
-                        var dlg = new PumpMainCurveChoiceDlg();
-                        dlg.SetBindingData(dbId, modelType);
-                        dlg.CurveinfoEvent += (dbid, curveid, curveinfo) =>
-                        {
-                        };
-                        dlg.ShowDialog();
+                        return false;
                     }
-                    break;
-
+                case Yw.WinFrmUI.HydroCurve.Valve:
+                    {
+                        return true;
+                    }
                 case Yw.WinFrmUI.HydroCurve.ValveQL:
                     {
-                        //
+                        return false;
                     }
-                    break;
-
                 default: break;
             }
-            //  XtraMessageBox.Show($"{propViewModel.Name}-{curveType}");
+            return false;
         }
 
         //閫夋嫨妯″紡
-        private void HydroParterPropertyCtrl1_SelectPatternEvent(HydroParterPropertyViewModel propViewModel, string patternType)
+        private bool HydroParterPropertyCtrl1_SelectPatternEvent(HydroParterPropertyViewModel propViewModel, string patternType)
         {
             switch (patternType)
             {
@@ -180,7 +160,19 @@
 
                 default: break;
             }
-            XtraMessageBox.Show($"{propViewModel.Name}-{patternType}");
+            return true;
+        }
+
+        //灞炴�у彂鐢熸敼鍙�
+        private bool HydroParterPropertyCtrl1_PropertyValueChangedEvent(HydroParterPropertyViewModel obj)
+        {
+            return false;
+        }
+
+        //灞炴�ф鍦ㄥ彂鐢熸敼鍙�
+        private bool HydroParterPropertyCtrl1_PropertyValueChangingEvent(HydroParterPropertyViewModel arg)
+        {
+            return false;
         }
     }
 }
\ No newline at end of file

--
Gitblit v1.9.3