From 28a7344a9f352624c9f44cc3fcb38d7226d5a754 Mon Sep 17 00:00:00 2001 From: qin <a@163.com> Date: 星期三, 19 三月 2025 09:10:02 +0800 Subject: [PATCH] 优化IBox接口请求 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs | 86 ++++++++++++++++++++++++++++++------------ 1 files changed, 61 insertions(+), 25 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs index ac626cd..bd24fba 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/07-matching/17-compressor/AssetsCompressorSingleMatchingCtrl.cs @@ -1,13 +1,4 @@ -锘縰sing DevExpress.XtraEditors; -using System; -using System.Collections.Generic; -using System.ComponentModel; -using System.Data; -using System.Drawing; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using System.Windows.Forms; +锘縰sing System.Data; namespace HStation.WinFrmUI { @@ -21,26 +12,50 @@ this.gridView1.RegistCustomDrawCell(); this.generalSearchCtrl1.SearchEvent += Search; this.generalSearchCtrl1.ClearEvent += Clear; + this.phartDiagramRelationGridViewCtrl1.SelectDataEvent += SelectData; } public List<AssetsCompressorSingleMatchingViewModel> _allList = null;//鎵�鏈夊垪琛� private List<AssetsCompressorSingleMatchingViewModel> _allBindingList = null;//鎵�鏈夌粦瀹氬垪琛� private AssetsCompressorMainVmo _selected = null;//褰撳墠閫変腑 + private AssetsCompressorSingleMatchingViewModel _row; + private CompressorMatchingViewModel _viewModel; + + private long? _curveDbId; + + public class CompressorMatchingViewModel + { + public CompressorMatchingViewModel() + { + } + + public AssetsCompressorMainVmo Vmo { get; set; } + public string MatchingCurveDbId { get; set; } + public List<HydroCurvePointViewModel> MatchingCurve { get; set; } + } + /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public async void SetBindingData(string dbId) + public async void SetBindingData(string dbId, string curveDbId) { var allList = await BLLFactory<HStation.BLL.AssetsCompressorMain>.Instance.GetAll(); - _allList = new List<AssetsCompressorSingleMatchingViewModel>(); - allList.ForEach(x => _allList.Add(new AssetsCompressorSingleMatchingViewModel(x))); - if (long.TryParse(dbId, out long id)) + if (allList != null) { - var item = allList?.Find(x => x.ID == id); - _selected = item; + _allList = new List<AssetsCompressorSingleMatchingViewModel>(); + allList.ForEach(x => _allList.Add(new AssetsCompressorSingleMatchingViewModel(x))); + if (long.TryParse(dbId, out long id)) + { + var item = allList?.Find(x => x.ID == id); + _selected = item; + } + if (long.TryParse(curveDbId, out long curveid)) + { + _curveDbId = curveid; + } + Search(); } - Search(); await Task.Delay(300); if (_selected != null) { @@ -97,25 +112,46 @@ /// <summary> /// 鑾峰彇 /// </summary> - public AssetsCompressorMainVmo Get() + public CompressorMatchingViewModel Get() { - var vm = this.gridView1.GetFocusedRow() as AssetsCompressorSingleMatchingViewModel; - if (vm == null) - { - return default; - } - return vm.Vmo; + /* var vm = this.gridView1.GetFocusedRow() as AssetsCompressorSingleMatchingViewModel; + if (vm == null) + { + return default; + } + _viewModel.Vmo = vm; + */ + return _viewModel; } //鑱氱劍鏀瑰彉 private void gridView1_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) { + _viewModel = new CompressorMatchingViewModel(); var row = this.gridView1.GetFocusedRow() as AssetsCompressorSingleMatchingViewModel; if (row == null) { return; } - this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.CompressorMain, row.Vmo.ID); + _row = row; + _viewModel.Vmo = row.Vmo; + this.phartDiagramRelationGridViewCtrl1.SetBindingData(HStation.Assets.DataType.CompressorMain, row.Vmo.ID, _curveDbId); + } + + //鏇茬嚎鏁版嵁鍏宠仈鍙樺寲 + private void SelectData(PhartDiagramRelationExtensionsVmo def) + { + if (def != null) + { + _viewModel.MatchingCurveDbId = def.ID.ToString(); + var curve = def.Diagram.GraphList[0].GetFeatPointList(); + + _viewModel.MatchingCurve = new List<HydroCurvePointViewModel>(); + foreach (var item in curve) + { + _viewModel.MatchingCurve.Add(new HydroCurvePointViewModel(item.X, item.Y)); + } + } } } } \ No newline at end of file -- Gitblit v1.9.3