From 74dba39c95f8120bb31a64739c872cb43790935c Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 20 十一月 2024 10:14:38 +0800 Subject: [PATCH] 核心界面修改 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs | 423 +++++++++++++++++++++++----------------------------- 1 files changed, 189 insertions(+), 234 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs index b02805d..38a4fb0 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/01-property/XhsProjectSimulationPropertyCtrl.cs @@ -11,85 +11,75 @@ public XhsProjectSimulationPropertyCtrl() { InitializeComponent(); - this.hydroVisualPropertyCtrl1.MatchingDbEvent += HydroParterPropertyCtrl1_MatchingDbEvent; - this.hydroVisualPropertyCtrl1.SetCurveEvent += HydroParterPropertyCtrl1_SetCurveEvent; - this.hydroVisualPropertyCtrl1.SetPatternEvent += HydroParterPropertyCtrl1_SetPatternEvent; - this.hydroVisualPropertyCtrl1.BlinkLinkParterEvent += HydroParterPropertyCtrl1_BlinkLinkParterEvent; - this.hydroVisualPropertyCtrl1.HydroViewEvent += HydroParterPropertyCtrl1_ViewParterEvent; + this.hydroVisualPropertyCtrl1.MatchingDbEvent += HydroVisualPropertyCtrl1_MatchingDbEvent; + this.hydroVisualPropertyCtrl1.SetCurveEvent += HydroVisualPropertyCtrl1_SetCurveEvent; + this.hydroVisualPropertyCtrl1.SetPatternEvent += HydroVisualPropertyCtrl1_SetPatternEvent; - this.hydroVisualPropertyCtrl1.PropertyValueChangedEvent += HydroParterPropertyCtrl1_PropertyValueChangedEvent; - this.hydroVisualPropertyCtrl1.MarkPropertyValueChangedEvent += HydroParterPropertyCtrl1_MarkPropertyValueChangedEvent; - this.hydroVisualPropertyCtrl1.GradingPropertyValueChangedEvent += HydroParterPropertyCtrl1_GradingPropertyValueChangedEvent; - this.hydroVisualPropertyCtrl1.FlowDirectionPropertyValueChangedEvent += HydroParterPropertyCtrl1_FlowDirectionPropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.HydroViewEvent += HydroVisualPropertyCtrl1_HydroViewEvent; + this.hydroVisualPropertyCtrl1.BlinkLinkNodeEvent += HydroVisualPropertyCtrl1_BlinkLinkNodeEvent; + this.hydroVisualPropertyCtrl1.PropertyValueChangedEvent += HydroVisualPropertyCtrl1_PropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.MarkPropertyValueChangedEvent += HydroVisualPropertyCtrl1_MarkPropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.GradingPropertyValueChangedEvent += HydroPVisualPropertyCtrl1_GradingPropertyValueChangedEvent; + this.hydroVisualPropertyCtrl1.FlowEffectPropertyValueChangedEvent += HydroVisualPropertyCtrl1_FlowEffectPropertyValueChangedEvent; } + #region 浜嬩欢闆� - - - + /// <summary> + /// 鏋勪欢鏌ョ湅浜嬩欢 + /// </summary> + public event Action<HydroVisualViewModel> HydroViewEvent; /// <summary> /// 寮鸿皟杩炴帴缁勪欢浜嬩欢 - /// 绗竴涓弬鏁颁负缁勪欢Code - /// 绗簩涓弬鏁颁负杩炴帴缁勪欢Code + /// 绗竴涓弬鏁颁负缁勪欢 + /// 绗簩涓弬鏁颁负杩炴帴鑺傜偣Code /// </summary> - public event Action<string, string> BlinkLinkParterEvent; + public event Action<HydroLinkViewModel, string> BlinkLinkNodeEvent; /// <summary> /// 灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> PropertyValueChangedEvent; + public event Action<HydroVisualViewModel> PropertyValueChangedEvent; /// <summary> /// 鏍囨敞灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> MarkPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> MarkPropertyValueChangedEvent; /// <summary> /// 鍒嗙骇灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> GradingPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> GradingPropertyValueChangedEvent; /// <summary> - /// 娴佸悜灞炴�у�兼敼鍙樹簨浠� + /// 姘存祦鍔ㄧ敾灞炴�у�兼敼鍙樹簨浠� /// </summary> - public event Action<Yw.Model.HydroVisualInfo> FlowDirectionPropertyValueChangedEvent; + public event Action<HydroVisualViewModel> FlowEffectPropertyValueChangedEvent; + + #endregion + + #region 灞炴�ц祴鍊� /// <summary> - /// 鏌ョ湅鏋勪欢浜嬩欢 + /// 閫夋嫨瀵硅薄 /// </summary> - public event Action<Yw.Model.HydroVisualInfo> ViewParterEvent; - - //姘村姏淇℃伅鏂规硶 - private Func<Yw.Model.HydroModelInfo> _hydroInfoFunc = null; - private Func<List<HydroCalcuVisualResult>> _allHydroCalcuResultListFunc = null; - - /// <summary> - /// 鍒濆鍖栨暟鎹� - /// </summary> - public void InitialData(Func<Yw.Model.HydroModelInfo> hydroInfoFunc, Func<List<HydroCalcuVisualResult>> allHydroCalcuResultListFunc) - { - _hydroInfoFunc = hydroInfoFunc; - _allHydroCalcuResultListFunc = allHydroCalcuResultListFunc; - } - - //鑾峰彇姘村姏淇℃伅 - private Yw.Model.HydroModelInfo GetHydroInfo() - { - var hydroInfo = _hydroInfoFunc?.Invoke(); - if (hydroInfo == null) - { - this.hydroVisualPropertyCtrl1.SelectedObject = null; - return default; - } - return hydroInfo; - } - - public HydroVisualViewModel SelectedObject { get { return this.hydroVisualPropertyCtrl1.SelectedObject; } set { this.hydroVisualPropertyCtrl1.SelectedObject = value; } + } + + #endregion + + #region 灞炴�ф洿鏂� + + /// <summary> + /// 閲嶆柊杞藉叆鏁版嵁 + /// </summary> + public void UpdateData() + { + this.hydroVisualPropertyCtrl1?.UpdateData(); } /// <summary> @@ -98,14 +88,6 @@ public void UpdateRows() { this.hydroVisualPropertyCtrl1?.UpdateRows(); - } - - /// <summary> - /// 閲嶆柊杞藉叆鏁版嵁 - /// </summary> - public void UpdateData() - { - this.hydroVisualPropertyCtrl1?.UpdateData(); } /// <summary> @@ -122,186 +104,38 @@ this.hydroVisualPropertyCtrl1.UpdateRows(); } - /// <summary> - /// 鏇存柊璁$畻灞炴�� - /// </summary> - public void UpdateCalcuProperty(Yw.WinFrmUI.HydroCalcuVisualResult calcuResult) - { - if (calcuResult == null) - { - return; - } - var vm = this.hydroVisualPropertyCtrl1.SelectedObject; - if (vm == null) - { - return; - } - vm.UpdateCalcuProperty(calcuResult); - this.hydroVisualPropertyCtrl1.UpdateRows(); - } + #endregion - //閫夋嫨鏇茬嚎 - private bool HydroParterPropertyCtrl1_SetCurveEvent(HydroParterViewModel propViewModel, string curveType) + #region 浜嬩欢瀹炵幇 + + //鍖归厤Db + private bool HydroVisualPropertyCtrl1_MatchingDbEvent(HydroVisualViewModel vm) { - var hydroInfo = _hydroInfoFunc?.Invoke(); - if (hydroInfo == null) + if (vm == null) { return false; } - switch (curveType) - { - case Yw.WinFrmUI.HydroCurve.Pump: - { - var pumpInfo = hydroInfo.Pumps?.Find(x => x.Code == propViewModel.Code); - if (pumpInfo == null) - { - break; - } - var input = AssetsMatchingParasHelper.Create(hydroInfo, pumpInfo, _allHydroCalcuResultListFunc?.Invoke()); - var dlg = new SinglePumpAnalyDlg(); - dlg.SetBindindData(input); - dlg.ReloadDataEvent += (output) => - { - var bol = AssetsMatchingParasHelper.Apply(hydroInfo, output); - if (bol) - { - propViewModel.UpdateProperty(); - this.hydroVisualPropertyCtrl1.UpdateRows(); - } - return bol; - }; - dlg.ShowDialog(); - return true; - } - case Yw.WinFrmUI.HydroCurve.PumpQH: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.PumpQP: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.PumpQE: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.Valve: - { - return false; - } - case Yw.WinFrmUI.HydroCurve.ValveQL: - { - return false; - } - default: break; - } - return false; - } - - //閫夋嫨妯″紡 - private bool HydroParterPropertyCtrl1_SetPatternEvent(HydroParterViewModel propViewModel, string patternType) - { - switch (patternType) - { - case Yw.WinFrmUI.HydroPattern.Demand: - { - } - break; - - case Yw.WinFrmUI.HydroPattern.Head: - { - } - break; - - default: break; - } - return true; - } - - //灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_PropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.PropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - //鏍囨敞灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_MarkPropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.MarkPropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - //鍒嗙骇灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_GradingPropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.GradingPropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - //娴佸悜灞炴�у彂鐢熸敼鍙� - private void HydroParterPropertyCtrl1_FlowDirectionPropertyValueChangedEvent(HydroVisualViewModel vm) - { - if (vm == null) - { - return; - } - this.FlowDirectionPropertyValueChangedEvent?.Invoke(vm.Vmo); - } - - - - - - - //灞炴�ф鍦ㄥ彂鐢熸敼鍙� - private bool HydroParterPropertyCtrl1_PropertyValueChangingEvent(HydroParterViewModel arg) - { - return false; - } - - //鍖归厤Db - private bool HydroParterPropertyCtrl1_MatchingDbEvent(HydroParterViewModel propertyViewModel) - { var bol = false; - if (propertyViewModel == null) - { - return bol; - } - var hydroInfo = _hydroInfoFunc?.Invoke(); - if (hydroInfo == null) - { - return bol; - } - var catalog = Yw.WinFrmUI.HydroParterCatalogHelper.GetCode(propertyViewModel.Catalog); + var catalog = HydroParterCatalogHelper.GetCode(vm.Catalog); switch (catalog) { case Yw.Hydro.ParterCatalog.Pump://姘存车 { - var pumpInfo = hydroInfo.Pumps?.Find(x => x.Code == propertyViewModel.Code); + var pumpInfo = vm.HydroInfo.Pumps?.Find(x => x.Code == vm.Code); if (pumpInfo == null) { break; } - var input = AssetsMatchingParasHelper.Create(hydroInfo, pumpInfo, _allHydroCalcuResultListFunc?.Invoke()); + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, pumpInfo, null); var dlg = new PumpSingleMatchingDlg(); dlg.SetBindingData(input); dlg.ReloadDataEvent += (output) => { - bol = AssetsMatchingParasHelper.Apply(hydroInfo, output); + bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, output); if (bol) { - propertyViewModel.UpdateProperty(); + vm.UpdateProperty(); } }; dlg.ShowDialog(); @@ -309,20 +143,20 @@ break; case Yw.Hydro.ParterCatalog.Valve://闃�闂� { - var valveInfo = hydroInfo.Valves?.Find(x => x.Code == propertyViewModel.Code); + var valveInfo = vm.HydroInfo.Valves?.Find(x => x.Code == vm.Code); if (valveInfo == null) { break; } - var input = AssetsMatchingParasHelper.Create(hydroInfo, valveInfo, _allHydroCalcuResultListFunc?.Invoke()); + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, valveInfo, null); var dlg = new ValveSingleMatchingDlg(); dlg.SetBindingData(input); dlg.ReloadDataEvent += (rhs) => { - var bol = AssetsMatchingParasHelper.Apply(hydroInfo, rhs); + bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, rhs); if (bol) { - propertyViewModel.UpdateProperty(); + vm.UpdateProperty(); this.hydroVisualPropertyCtrl1.UpdateRows(); } }; @@ -335,20 +169,20 @@ break; case Yw.Hydro.ParterCatalog.Elbow://寮ご { - var elbowInfo = hydroInfo.Elbows?.Find(x => x.Code == propertyViewModel.Code); + var elbowInfo = vm.HydroInfo.Elbows?.Find(x => x.Code == vm.Code); if (elbowInfo == null) { break; } - var input = AssetsMatchingParasHelper.Create(hydroInfo, elbowInfo, _allHydroCalcuResultListFunc?.Invoke()); + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, elbowInfo, null); var dlg = new ElbowSingMatchingDlg(); dlg.SetBindingData(input); dlg.ReloadDataEvent += (output) => { - var bol = AssetsMatchingParasHelper.Apply(hydroInfo, output); + bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, output); if (bol) { - propertyViewModel.UpdateProperty(); + vm.UpdateProperty(); this.hydroVisualPropertyCtrl1.UpdateRows(); } }; @@ -368,30 +202,151 @@ return bol; } - //寮鸿皟杩炴帴缁勪欢 - private void HydroParterPropertyCtrl1_BlinkLinkParterEvent(string code, string linkCode) + //閫夋嫨鏇茬嚎 + private bool HydroVisualPropertyCtrl1_SetCurveEvent(HydroVisualViewModel vm, string curveType) { - if (string.IsNullOrEmpty(code)) + if (vm == null) { - return; + return false; } - if (string.IsNullOrEmpty(linkCode)) + switch (curveType) { - return; + case HydroCurve.Pump: + { + var pumpInfo = vm.HydroInfo.Pumps?.Find(x => x.Code == vm.Code); + if (pumpInfo == null) + { + break; + } + var input = AssetsMatchingParasHelper.Create(vm.HydroInfo, pumpInfo, null); + var dlg = new SinglePumpAnalyDlg(); + dlg.SetBindindData(input); + dlg.ReloadDataEvent += (output) => + { + var bol = AssetsMatchingParasHelper.Apply(vm.HydroInfo, output); + if (bol) + { + vm.UpdateProperty(); + this.hydroVisualPropertyCtrl1.UpdateRows(); + } + return bol; + }; + dlg.ShowDialog(); + return true; + } + case HydroCurve.PumpQH: + { + return false; + } + case HydroCurve.PumpQP: + { + return false; + } + case HydroCurve.PumpQE: + { + return false; + } + case HydroCurve.Valve: + { + return false; + } + case HydroCurve.ValveQL: + { + return false; + } + default: break; } - this.BlinkLinkParterEvent?.Invoke(code, linkCode); + return false; } - //鏌ョ湅鏋勪欢 - private void HydroParterPropertyCtrl1_ViewParterEvent(HydroVisualViewModel vm) + //閫夋嫨妯″紡 + private bool HydroVisualPropertyCtrl1_SetPatternEvent(HydroVisualViewModel vm, string patternType) + { + switch (patternType) + { + case HydroPattern.Head: + { + return false; + } + case HydroPattern.Demand: + { + return false; + } + default: break; + } + return false; + } + + #endregion + + #region 浜嬩欢绌块�� + + //鏋勪欢鏌ョ湅浜嬩欢 + private void HydroVisualPropertyCtrl1_HydroViewEvent(HydroVisualViewModel vm) { if (vm == null) { return; } - this.ViewParterEvent?.Invoke(vm.Vmo); + this.HydroViewEvent?.Invoke(vm); } + //寮鸿皟杩炴帴鑺傜偣 + private void HydroVisualPropertyCtrl1_BlinkLinkNodeEvent(HydroLinkViewModel vm, string linkNodeCode) + { + if (vm == null) + { + return; + } + if (string.IsNullOrEmpty(linkNodeCode)) + { + return; + } + this.BlinkLinkNodeEvent?.Invoke(vm, linkNodeCode); + } + + //灞炴�у彂鐢熸敼鍙� + private void HydroVisualPropertyCtrl1_PropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.PropertyValueChangedEvent?.Invoke(vm); + } + + //鏍囨敞灞炴�у彂鐢熸敼鍙� + private void HydroVisualPropertyCtrl1_MarkPropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.MarkPropertyValueChangedEvent?.Invoke(vm); + } + + //鍒嗙骇灞炴�у彂鐢熸敼鍙� + private void HydroPVisualPropertyCtrl1_GradingPropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.GradingPropertyValueChangedEvent?.Invoke(vm); + } + + //姘存祦鍔ㄧ敾灞炴�у彂鐢熸敼鍙� + private void HydroVisualPropertyCtrl1_FlowEffectPropertyValueChangedEvent(HydroVisualViewModel vm) + { + if (vm == null) + { + return; + } + this.FlowEffectPropertyValueChangedEvent?.Invoke(vm); + } + + #endregion + } } \ No newline at end of file -- Gitblit v1.9.3