From ca1ccd0dd9f2d6936368f07d14a2b29b309fd151 Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期三, 04 十二月 2024 15:59:25 +0800 Subject: [PATCH] 增加单独匹配界面 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/03-valve/01-valvesinglematching/ValveSingleMatchingForm.cs | 78 +++++++++++++++++++++++++-------------- 1 files changed, 50 insertions(+), 28 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/03-valve/01-valvesinglematching/ValveSingleMatchingForm.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/03-valve/01-valvesinglematching/ValveSingleMatchingForm.cs index ab73902..c765f4e 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/03-valve/01-valvesinglematching/ValveSingleMatchingForm.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/06-simulation/01-matching/03-valve/01-valvesinglematching/ValveSingleMatchingForm.cs @@ -1,5 +1,4 @@ -锘縰sing HStation.WinFrmUI.Basic; -using HStation.WinFrmUI.PhartRelation; +锘縰sing HStation.WinFrmUI.PhartRelation; using HStation.WinFrmUI.Xhs; namespace HStation.WinFrmUI @@ -35,9 +34,11 @@ private List<PhartViewModel> _allPhartList = null; private readonly Lazy<BLL.XhsValveMainPhartMappingExtensions> _bll_ex = new(); - private ValveMatchingViewModel _pumpMatchingViewModel; + private HydroValveMatchingViewModel _pumpMatchingViewModel; - public async void SetBindingData(ValveMatchingViewModel valveMatchingViewModel) + private List<HydroCurvePointViewModel> _currentCurvePoint; + + public async void SetBindingData(HydroValveMatchingViewModel valveMatchingViewModel) { _pumpMatchingViewModel = valveMatchingViewModel; _allBindingList = new List<ValveSingleMatchingViewModel>(); @@ -47,8 +48,8 @@ { _allBindingList.Add(new ValveSingleMatchingViewModel(Main)); } - - this.searchControl1.Text = valveMatchingViewModel.ModelType; + this.valveSingleMatchingViewModelBindingSource.DataSource = _allBindingList; + this.searchControl1.Text = _pumpMatchingViewModel.ModelType; for (int i = 0; i < _allBindingList.Count; i++) { if (long.TryParse(valveMatchingViewModel.DbId, out long dbID)) @@ -59,7 +60,7 @@ } } } - this.valveSingleMatchingViewModelBindingSource.DataSource = _allBindingList; + _currentCurvePoint = new List<HydroCurvePointViewModel>(); } //闃�闂ㄥ瀷鍙峰垪琛ㄩ�夋嫨椤瑰垏鎹簨浠� @@ -69,7 +70,7 @@ var vm = this.gridView3.GetCurrentViewModel(_allBindingList); if (vm != null) { - if (vm.SeriesType == HStation.Assets.eValveType.GPV) + if (vm.SeriesType == HStation.Assets.eValveType.GPV || vm.SeriesType == HStation.Assets.eValveType.TCV) { layoutControlGroup2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; } @@ -85,7 +86,7 @@ } _pumpMatchingViewModel.MatchingMinorLoss = vm.Coefficient; _pumpMatchingViewModel.MatchingMaterial = vm.Material; - _pumpMatchingViewModel.MatchingValveType = vm.SeriesType; + _pumpMatchingViewModel.MatchingValveType = (eValveType?)vm.SeriesType; _pumpMatchingViewModel.MatchingValveSetting = vm.ValveSetting; var list = await _bll_ex.Value.GetByValveMainID(vm.ID); if (list != null && list.Any()) @@ -96,17 +97,18 @@ } } } - if (_pumpMatchingViewModel.MatchingChartDbId != null) + if (_pumpMatchingViewModel.MatchingCurveDbId != null) { for (int i = 0; i < _allPhartList.Count; i++) { - if (_allBindingList[i].ID.ToString() == _pumpMatchingViewModel.MatchingChartDbId) + if (_allBindingList[i].ID.ToString() == _pumpMatchingViewModel.MatchingCurveDbId) { gridView1.FocusedRowHandle = i; } } } this.gridControl1.DataSource = _allPhartList; + this.gridView1.FocusInvalidRow(); } //鏌ョ湅鏇茬嚎 @@ -115,27 +117,47 @@ if (e.Column == this.ColShowChart) { var vm = this.gridView1.GetCurrentViewModel(_allPhartList); - if (vm != null) + + var vmo = await _bll_ex.Value.GetByID(vm.ID); + if (vmo != null) { - var vmo = await _bll_ex.Value.GetByID(vm.ID); - if (vmo != null) - { - _pumpMatchingViewModel.MatchingChartDbId = vm.ID.ToString(); - var graph_ql = vmo.Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.ValveQL); - if (graph_ql != null) - { - var points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_ql.GraphType, graph_ql.GeometryInfo, 100, null); - _pumpMatchingViewModel.MatchingCurveQL = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qh) - { - _pumpMatchingViewModel.MatchingCurveQL.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } - } var dlg = new ValveChartShowDlg(); dlg.InitChart(vmo); dlg.ShowDialog(); - return; + } + return; + } + } + + private async void gridView1_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) + { + var vm = this.gridView1.GetCurrentViewModel(_allPhartList); + _currentCurvePoint.Clear(); + if (vm == null) + return; + var vmo = await _bll_ex.Value.GetByID(vm.ID); + if (vmo != null) + { + _pumpMatchingViewModel.MatchingCurveDbId = vm.ID.ToString(); + var graph_ql = vmo.Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.ValveQL); + var graph_ol = vmo.Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.ValveOL); + if (graph_ql != null) + { + var points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_ql.GraphType, graph_ql.GeometryInfo, 100, null); + foreach (var item in points_qh) + { + _currentCurvePoint.Add(new HydroCurvePointViewModel(item.X, item.Y)); + } + _pumpMatchingViewModel.MatchingCurveQL = _currentCurvePoint; + } + if (graph_ol != null) + { + var points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_ol.GraphType, graph_ol.GeometryInfo, 100, null); + foreach (var item in points_qh) + { + _currentCurvePoint.Add(new HydroCurvePointViewModel(item.X, item.Y)); + } + _pumpMatchingViewModel.MatchingCurveOL = _currentCurvePoint; } } } -- Gitblit v1.9.3