From 6551843c49431dacf67ea26e1ea21bf887a5246c Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期日, 22 十二月 2024 12:43:18 +0800 Subject: [PATCH] 测点整改 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/04-monitor/01-monitor/SimulationMonitorHelper.cs | 81 +++++++++++++++++++++++++++++++++++----- 1 files changed, 71 insertions(+), 10 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/04-monitor/01-monitor/SimulationMonitorHelper.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/04-monitor/01-monitor/SimulationMonitorHelper.cs index 266c42e..7cab58b 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/04-monitor/01-monitor/SimulationMonitorHelper.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/04-monitor/01-monitor/SimulationMonitorHelper.cs @@ -1,4 +1,5 @@ -锘縰sing Yw.Vmo; +锘縰sing Yw.Hydro; +using Yw.Vmo; namespace HStation.WinFrmUI { @@ -10,22 +11,22 @@ /// <summary> /// /// </summary> - public SimulationMonitorHelper(long modelId) + public SimulationMonitorHelper(SimulationVisualListHelper visualListHelper) { - _modelId = modelId; + _visualListHelper = visualListHelper; } - private long _modelId;//妯″瀷id + private readonly SimulationVisualListHelper _visualListHelper = null;//鍙鏋勪欢鍒楄〃杈呭姪绫� private List<HydroMonitorVmo> _allMonitorList = null;//鎵�鏈夌洃娴嬬偣鍒楄〃 /// <summary> /// 鑾峰彇 /// </summary> - public async Task<List<HydroMonitorVmo>> Get() + public async Task<List<HydroMonitorVmo>> GetAll() { if (_allMonitorList == null) { - _allMonitorList = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.GetByModelID(_modelId); + _allMonitorList = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.GetByModelID(_visualListHelper.HydroInfo.ID); if (_allMonitorList == null) { _allMonitorList = new List<HydroMonitorVmo>(); @@ -35,20 +36,80 @@ } /// <summary> + /// 鑾峰彇瀵规帴鍒楄〃 + /// </summary> + public async Task<List<HydroMonitorVmo>> GetDockingList() + { + var all = await GetAll(); + return all?.Where(x => x.SourceType == Yw.Hydro.eSourceType.Docking).ToList(); + } + + /// <summary> + /// 鑾峰彇鍒嗘瀽鍒楄〃 + /// </summary> + public async Task<List<HydroMonitorVmo>> GetAnalyseList() + { + var all = await GetAll(); + return all?.Where(x => x.SourceType == Yw.Hydro.eSourceType.Analyse).ToList(); + } + + /// <summary> /// 鏇存柊 /// </summary> public async Task<List<HydroMonitorVmo>> Update(string code) { - var allMonitorList = await Get(); - allMonitorList.RemoveAll(x => x.Relation == code); - var monitorList = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.GetByRelation(_modelId, code); + var all = await GetAll(); + all.RemoveAll(x => x.Relation == code); + var monitorList = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.GetByRelation(_visualListHelper.HydroInfo.ID, code); if (monitorList != null && monitorList.Count > 0) { - allMonitorList.AddRange(monitorList); + all.AddRange(monitorList); } return monitorList; } + /// <summary> + /// 鏇存柊瀵规帴 + /// </summary> + public async Task<List<HydroMonitorVmo>> UpdateDocking(string code) + { + var all = await GetAll(); + all.RemoveAll(x => x.Relation == code && x.SourceType == Yw.Hydro.eSourceType.Docking); + var monitorList = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.GetBySourceType(_visualListHelper.HydroInfo.ID, code, Yw.Hydro.eSourceType.Docking); + if (monitorList != null && monitorList.Count > 0) + { + all.AddRange(monitorList); + } + return monitorList; + } + + /// <summary> + /// 鏇存柊 + /// </summary> + public async Task Update(string code, eSourceType sourceType, List<HydroMonitorVmo> monitorList) + { + var all = await GetAll(); + all.RemoveAll(x => x.Relation == code && x.SourceType == sourceType); + if (monitorList != null && monitorList.Count > 0) + { + all.AddRange(monitorList); + } + } + + /// <summary> + /// 鏇存柊鍒嗘瀽 + /// </summary> + public async Task<List<HydroMonitorVmo>> UpdateAnalyse(string code) + { + var all = await GetAll(); + all.RemoveAll(x => x.Relation == code && x.SourceType == Yw.Hydro.eSourceType.Analyse); + var monitorList = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.GetBySourceType(_visualListHelper.HydroInfo.ID, code, Yw.Hydro.eSourceType.Analyse); + if (monitorList != null && monitorList.Count > 0) + { + all.AddRange(monitorList); + } + return monitorList; + } -- Gitblit v1.9.3