From bef933e7e166b085ba7e46e38ea62d9ae0129ec6 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期一, 20 一月 2025 10:47:23 +0800 Subject: [PATCH] 远程API模式阶段性提交 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs | 59 +++++++++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 47 insertions(+), 12 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs index 53818d3..7c8c16a 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/06-visual/13-flowmeter/HydroFlowmeterListCtrl.cs @@ -40,34 +40,54 @@ get { return _allList != null && _allList.Count > 0; } } - //鎵�鏈夊垪琛� - private List<HydroFlowmeterViewModel> _allList = null; - //鎵�鏈夌粦瀹氬垪琛� - private List<HydroFlowmeterViewModel> _allBindingList = null; + + private List<HydroFlowmeterViewModel> _allList = null;//鎵�鏈夊垪琛� + private List<HydroFlowmeterViewModel> _allBindingList = null;//鎵�鏈夌粦瀹氬垪琛� + private HydroChangeHelper _changeHelper = null;//鏀瑰彉杈呭姪绫� + private HydroPropStatusHelper _propStatusHelper = null;//灞炴�х姸鎬佽緟鍔╃被 /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) + public void SetBindingData + ( + Yw.Model.HydroModelInfo hydroInfo, + HydroChangeHelper changeHelper = null, + HydroPropStatusHelper propStatusHelper = null + ) { - SetBindingData(hydroInfo, allCalcuResultVisualDict: null); + SetBindingData(hydroInfo, allCalcuResultVisualDict: null, changeHelper, propStatusHelper); } /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, List<HydroCalcuVisualResult> allCalcuResultList) + public void SetBindingData + ( + Yw.Model.HydroModelInfo hydroInfo, + List<HydroCalcuVisualResult> allCalcuResultList, + HydroChangeHelper changeHelper = null, + HydroPropStatusHelper propStatusHelper = null + ) { var allCalcuResultVisualDict = allCalcuResultList?.ToDictionary(x => x.Code); - SetBindingData(hydroInfo, allCalcuResultVisualDict); + SetBindingData(hydroInfo, allCalcuResultVisualDict, changeHelper, propStatusHelper); } /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(HydroModelInfo hydroInfo, Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict) + public void SetBindingData + ( + HydroModelInfo hydroInfo, + Dictionary<string, HydroCalcuVisualResult> allCalcuResultVisualDict, + HydroChangeHelper changeHelper = null, + HydroPropStatusHelper propStatusHelper = null + ) { _allList = new List<HydroFlowmeterViewModel>(); + _changeHelper = changeHelper; + _propStatusHelper = propStatusHelper; if (hydroInfo != null && hydroInfo.Flowmeters != null && hydroInfo.Flowmeters.Count > 0) { foreach (var visual in hydroInfo.Flowmeters) @@ -87,9 +107,16 @@ /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(List<HydroVisualViewModel> allVisualViewModelList) + public void SetBindingData + ( + List<HydroVisualViewModel> allVisualViewModelList, + HydroChangeHelper changeHelper = null, + HydroPropStatusHelper propStatusHelper = null + ) { _allList = new List<HydroFlowmeterViewModel>(); + _changeHelper = changeHelper; + _propStatusHelper = propStatusHelper; allVisualViewModelList?.ForEach(x => { if (x.Vmo.Catalog == Yw.Hydro.ParterCatalog.Flowmeter) @@ -244,9 +271,13 @@ return; } var dlg = new SetHydroFlowmeterDlg(); - dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList()); + dlg.SetBindingData(_allBindingList.Select(x => x.Vmo).ToList(), _changeHelper, _propStatusHelper); dlg.ReloadDataEvent += (list) => { + if (list == null || list.Count < 1) + { + return; + } _allBindingList.ForEach(x => x.UpdateProperty()); this.hydroFlowmeterViewModelBindingSource.ResetBindings(false); var allVisualViewModelList = _allBindingList.Select(x => x as HydroVisualViewModel).ToList(); @@ -269,9 +300,13 @@ if (e.Column == this.colSet) { var dlg = new SetHydroFlowmeterDlg(); - dlg.SetBindingData(row.Vmo); + dlg.SetBindingData(row.Vmo, _changeHelper, _propStatusHelper); dlg.ReloadDataEvent += (list) => { + if (list == null || list.Count < 1) + { + return; + } row.UpdateProperty(); this.gridView1.RefreshRow(e.RowHandle); this.HydroChangedViewEvent?.Invoke(new List<HydroVisualViewModel>() { row }); -- Gitblit v1.9.3