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 | 205 +++++++++++++++++++++++++++------------------------ 1 files changed, 108 insertions(+), 97 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 28cd017..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,13 +1,15 @@ 锘縰sing HStation.WinFrmUI.PhartRelation; +using HStation.WinFrmUI.Xhs; -namespace HStation.WinFrmUI.Xhs +namespace HStation.WinFrmUI { - public partial class ValveSingleMatchingForm : DevExpress.XtraEditors.XtraUserControl + public partial class ValveSingleMatchingCtrl : DevExpress.XtraEditors.XtraUserControl { - public ValveSingleMatchingForm() + public ValveSingleMatchingCtrl() { InitializeComponent(); this.gridView1.SetNormalView(); + this.gridView3.SetNormalView(); } public class PhartViewModel @@ -22,133 +24,142 @@ { public long? Dbid { get; set; } public long? Curveid { get; set; } - public Vmo.XhsPumpMainPhartMappingExtensions Curveinfo { get; set; } + public Vmo.XhsValveMainPhartMappingExtensions Curveinfo { get; set; } } private List<ValveSingleMatchingViewModel> _allBindingList = null; - private BLL.PumpMain _pumpBll = null; + private BLL.AssetsValveMain _valveBll = null; private List<PhartViewModel> _allPhartList = null; - private readonly Lazy<BLL.XhsPumpMainPhartMappingExtensions> _bll_ex = new(); + private readonly Lazy<BLL.XhsValveMainPhartMappingExtensions> _bll_ex = new(); - private PumpMatchingViewModel _pumpMatchingViewModel; + private HydroValveMatchingViewModel _pumpMatchingViewModel; - public async void SetBindingData(PumpMatchingViewModel pumpMatchingViewModel) + private List<HydroCurvePointViewModel> _currentCurvePoint; + + public async void SetBindingData(HydroValveMatchingViewModel valveMatchingViewModel) { - _pumpMatchingViewModel = pumpMatchingViewModel; + _pumpMatchingViewModel = valveMatchingViewModel; _allBindingList = new List<ValveSingleMatchingViewModel>(); - _pumpBll = new BLL.PumpMain(); - var allPumpMain = await _pumpBll.GetAll(); - foreach (var Main in allPumpMain) + _valveBll = new BLL.AssetsValveMain(); + var allAssetsPumpMain = await _valveBll.GetAll(); + foreach (var Main in allAssetsPumpMain) { _allBindingList.Add(new ValveSingleMatchingViewModel(Main)); } + this.valveSingleMatchingViewModelBindingSource.DataSource = _allBindingList; + this.searchControl1.Text = _pumpMatchingViewModel.ModelType; for (int i = 0; i < _allBindingList.Count; i++) { - if (long.TryParse(pumpMatchingViewModel.DbId, out long dbID)) + if (long.TryParse(valveMatchingViewModel.DbId, out long dbID)) { if (_allBindingList[i].ID == dbID) { + this.gridView3.FocusedRowHandle = i; } } } - this.searchControl1.Text = pumpMatchingViewModel.ModelType; + _currentCurvePoint = new List<HydroCurvePointViewModel>(); } - //鍒濆鍖栧浘琛ㄦ暟鎹� - private void InitChart(Vmo.XhsPumpMainPhartMappingExtensions dto) - { - if (dto == null) - { - return; - } - var diagram = dto.Diagram; - if (diagram == null) - { - return; - } - var graph_list = diagram.GraphList; - if (graph_list == null || !graph_list.Any()) - { - return; - } - - var graph_qh = graph_list.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQH); - var graph_qe = graph_list.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQE); - var graph_qp = graph_list.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQP); - - if (graph_qp == null) - { - return; - } - - List<Yw.Geometry.Point2d> points_qh = null, points_qe = null, points_qp = null; - points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_qh.GraphType, graph_qh.GeometryInfo, 12, null); - if (graph_qe != null) - points_qe = PhartPerformCurveHelper.GetFeatPointList(graph_qe.GraphType, graph_qe.GeometryInfo, 12, null); - if (graph_qp != null) - points_qp = PhartPerformCurveHelper.GetFeatPointList(graph_qp.GraphType, graph_qp.GeometryInfo, 12, null); - - var cubic_spline_qh = new Yw.Geometry.CubicSpline2d(points_qh); - var cubic_spline_qe = new Yw.Geometry.CubicSpline2d(points_qe); - var cubic_spline_qp = new Yw.Geometry.CubicSpline2d(points_qp); - - var disp_paras = diagram.DispParas; - var is_calc_disp_paras = string.IsNullOrWhiteSpace(disp_paras); - this.xtrPerform2dChart1.SetBindingData(cubic_spline_qh, cubic_spline_qe, cubic_spline_qp, disp_paras, is_calc_disp_paras); - } - - //娉靛瀷鍙峰垪琛ㄩ�夋嫨椤瑰垏鎹簨浠� + //闃�闂ㄥ瀷鍙峰垪琛ㄩ�夋嫨椤瑰垏鎹簨浠� private async void gridView2_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) { - } - - //鏇茬嚎鍒楄〃閫夋嫨椤瑰垏鎹簨浠� - private async void gridView1_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e) - { - var vm = this.gridView1.GetCurrentViewModel(_allPhartList); + _allPhartList = new List<PhartViewModel>(); + var vm = this.gridView3.GetCurrentViewModel(_allBindingList); if (vm != null) { + if (vm.SeriesType == HStation.Assets.eValveType.GPV || vm.SeriesType == HStation.Assets.eValveType.TCV) + { + layoutControlGroup2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Always; + } + else + { + layoutControlGroup2.Visibility = DevExpress.XtraLayout.Utils.LayoutVisibility.Never; + } + _pumpMatchingViewModel.MatchingDbId = vm.ID.ToString(); + _pumpMatchingViewModel.MatchingModelType = vm.Name.ToString(); + if (double.TryParse(vm.Caliber, out double caliber)) + { + _pumpMatchingViewModel.MatchingDiameter = caliber; + } + _pumpMatchingViewModel.MatchingMinorLoss = vm.Coefficient; + _pumpMatchingViewModel.MatchingMaterial = vm.Material; + _pumpMatchingViewModel.MatchingValveType = (eValveType?)vm.SeriesType; + _pumpMatchingViewModel.MatchingValveSetting = vm.ValveSetting; + var list = await _bll_ex.Value.GetByValveMainID(vm.ID); + if (list != null && list.Any()) + { + foreach (var item in list) + { + _allPhartList.Add(new PhartViewModel { ID = item.ID, OtherName = item.OtherName, Importance = item.Importance, SortCode = item.SortCode }); + } + } + } + if (_pumpMatchingViewModel.MatchingCurveDbId != null) + { + for (int i = 0; i < _allPhartList.Count; i++) + { + if (_allBindingList[i].ID.ToString() == _pumpMatchingViewModel.MatchingCurveDbId) + { + gridView1.FocusedRowHandle = i; + } + } + } + this.gridControl1.DataSource = _allPhartList; + this.gridView1.FocusInvalidRow(); + } + + //鏌ョ湅鏇茬嚎 + private async void gridView1_RowCellClick(object sender, DevExpress.XtraGrid.Views.Grid.RowCellClickEventArgs e) + { + if (e.Column == this.ColShowChart) + { + var vm = this.gridView1.GetCurrentViewModel(_allPhartList); + var vmo = await _bll_ex.Value.GetByID(vm.ID); if (vmo != null) { - _pumpMatchingViewModel.MatchingCurveDbId = vm.ID.ToString(); - var graph_qh = vmo.Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQH); - var graph_qe = vmo.Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQE); - var graph_qp = vmo.Diagram.GraphList.Find(x => x.GraphType == HStation.PhartRelation.eGraphType.PumpQP); - if (graph_qh != null) - { - var points_qh = PhartPerformCurveHelper.GetFeatPointList(graph_qh.GraphType, graph_qh.GeometryInfo, 100, null); - _pumpMatchingViewModel.MatchingCurveQH = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qh) - { - _pumpMatchingViewModel.MatchingCurveQH.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } - if (graph_qe != null) - { - var points_qe = PhartPerformCurveHelper.GetFeatPointList(graph_qe.GraphType, graph_qe.GeometryInfo, 100, null); - _pumpMatchingViewModel.MatchingCurveQE = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qe) - { - _pumpMatchingViewModel.MatchingCurveQE.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } - if (graph_qp != null) - { - var points_qp = PhartPerformCurveHelper.GetFeatPointList(graph_qp.GraphType, graph_qp.GeometryInfo, 100, null); - _pumpMatchingViewModel.MatchingCurveQP = new List<CurvePointMatchingViewModel>(); - foreach (var item in points_qp) - { - _pumpMatchingViewModel.MatchingCurveQP.Add(new CurvePointMatchingViewModel(item.X, item.Y)); - } - } + var dlg = new ValveChartShowDlg(); + dlg.InitChart(vmo); + dlg.ShowDialog(); } - InitChart(vmo); return; } - this.xtrPerform2dChart1.SetBindingData(null, null, null, null, false); + } + + 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; + } + } } } } \ No newline at end of file -- Gitblit v1.9.3