From 288e87195c7b604e87fe4b98aa759c5fff6e2346 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 19 二月 2025 00:10:12 +0800 Subject: [PATCH] 能效分析 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/03-helper/HydroPropStatusHelper.cs | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 58 insertions(+), 2 deletions(-) diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/03-helper/HydroPropStatusHelper.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/03-helper/HydroPropStatusHelper.cs index c9a1228..39642fc 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/03-helper/HydroPropStatusHelper.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/03-helper/HydroPropStatusHelper.cs @@ -24,6 +24,7 @@ private Yw.Model.HydroModelInfo _hydroInfo = null;//姘村姏淇℃伅 private Dictionary<string, List<Yw.Model.HydroParterPropStatusInfo>> _dict = null;//瀛楀吀 + private Dictionary<string, List<Yw.Model.HydroParterPropStatusInfo>> _dictUpdate = null;//鏇存柊瀛楀吀 /// <summary> /// 鑾峰彇灞炴�х姸鎬佷俊鎭� @@ -65,6 +66,23 @@ } /// <summary> + /// 鑾峰彇鏇存柊灞炴�х姸鎬丏b鍒楄〃 + /// </summary> + /// <returns></returns> + public List<Yw.Model.HydroParterPropStatusInfo> GetUpdatePropStatusDbList() + { + return _hydroInfo.ToPropStatusDbList(_dictUpdate); + } + + /// <summary> + /// 閲嶇疆 + /// </summary> + public void Reset() + { + _dictUpdate?.Clear(); + } + + /// <summary> /// 鏇存柊灞炴�х姸鎬� /// </summary> public void UpdatePropStatus(Yw.Model.HydroParterInfo parter, string propNameInfo, ePropStatus propStatus, string statusInfo) @@ -101,11 +119,49 @@ var propStatusInfo = list.Find(x => x.PropName == propNameInfo); if (propStatusInfo == null) { - propStatusInfo.Parter = code; - propStatusInfo.PropName = propNameInfo; + propStatusInfo = new HydroParterPropStatusInfo() + { + Parter = code, + PropName = propNameInfo + }; + list.Add(propStatusInfo); } propStatusInfo.PropStatus = propStatus; propStatusInfo.StatusInfo = statusInfo; + + AppendUpdatePropStatus(propStatusInfo); + } + + //闄勫姞鏇存柊灞炴�х姸鎬� + private void AppendUpdatePropStatus(HydroParterPropStatusInfo propStatusInfo) + { + if (propStatusInfo == null) + { + return; + } + if (string.IsNullOrEmpty(propStatusInfo.Parter)) + { + return; + } + if (string.IsNullOrEmpty(propStatusInfo.PropName)) + { + return; + } + if (_dictUpdate == null) + { + _dictUpdate = new Dictionary<string, List<HydroParterPropStatusInfo>>(); + } + if (!_dictUpdate.ContainsKey(propStatusInfo.Parter)) + { + _dictUpdate.Add(propStatusInfo.Parter, new List<HydroParterPropStatusInfo>()); + } + if (_dictUpdate[propStatusInfo.Parter] == null) + { + _dictUpdate[propStatusInfo.Parter] = new List<Model.HydroParterPropStatusInfo>(); + } + var list = _dictUpdate[propStatusInfo.Parter]; + list.RemoveAll(x => x.PropName == propStatusInfo.PropName); + list.Add(propStatusInfo); } -- Gitblit v1.9.3