From 81819f13e1e3a49bf8456051ec0f0b51e3f10821 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期一, 23 九月 2024 12:20:33 +0800 Subject: [PATCH] 解析优化 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs | 144 ++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 138 insertions(+), 6 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs index bb1af71..24d5df3 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs @@ -1,4 +1,5 @@ 锘縢lobal using Yw.EPAnet; +using DevExpress.Xpo.Helpers; using HStation.WinFrmUI.Xhs; using HStation.WinFrmUI.Xhs.Core; using NPOI.SS.Formula.Functions; @@ -16,6 +17,9 @@ this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.assetsMainChoicePage1.FormRowClickEvent += xhsProjectSimulationHydroCheckFailedCtrl1_HydroClickEvent; } private HStation.Vmo.XhsProjectVmo _project = null;//椤圭洰 @@ -55,6 +59,7 @@ _hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(hydroRelation.ModelID); } this.xhsProjectSimulationQ3dCtrl1.SetBindingData(_hydroInfo); + this.xhsProjectSimulationL3dCtrl1.SetBindingData(_hydroInfo); } /// <summary> @@ -90,7 +95,7 @@ } if (_fastShowHideCodeList == null) { - _fastShowHideCodeList = _hydroInfo.Waterboxs.Select(x => x.Code).ToList(); + _fastShowHideCodeList = _hydroInfo.Decorators.Select(x => x.Code).ToList(); await this.xhsProjectSimulationBimfaceCtrl1.HideComponents(_fastShowHideCodeList); } else @@ -110,6 +115,7 @@ this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); _checkResult = netWork.Check(); @@ -120,6 +126,7 @@ } this.xhsProjectSimulationHydroCheckFailedCtrl1.SetBindingData(_checkResult.FailedList); this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; + this.docPnlHydroCheck.Height = 350; } //姘村姏璁$畻 @@ -132,6 +139,7 @@ this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); _calcuResult = netWork.Calcu(); @@ -143,6 +151,7 @@ } this.xhsProjectSimulationHydroCalcuFailedCtrl1.SetBindingData(_calcuResult.FailedList); this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; + this.docPnlHydroCalcu.Height = 350; } //姘村姏鏋勪欢鍒楄〃 @@ -155,9 +164,12 @@ this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + // this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; this.hydroParterListCtrl1.SetBindingData(_hydroInfo); this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; + this.docPnlHydroParterList.Height = 350; } //瀵煎嚭姘村姏INP鏂囦欢 @@ -176,6 +188,23 @@ var result = netWork.ToInpString(); File.WriteAllText(fileName, result); TipFormHelper.ShowSucceed("瀵煎嚭鎴愬姛"); + } + + //鏈尮閰嶅垪琛� + private void barBtnUnMatchingList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + if (_hydroInfo == null) + { + return; + } + this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + + this.xhsProjectSimulationUnMatchingListCtrl1.SetBindingData(_hydroInfo); + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; + this.docPnlUnMatchingList.Height = 350; } //bimface 鏋勪欢鐐瑰嚮 @@ -254,15 +283,101 @@ return; } _hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(id); - //this.xhsProjectSimulationPropertyCtrl1.SetBindingData(_hydroInfo); + //this.xhsProjectSimulationPropertyCtrl1.SetMatching(_hydroInfo); TipFormHelper.ShowSucceed("淇濆瓨鎴愬姛锛�"); } //鑷姩鍖归厤 private void barBtnAllAutoMatching_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - var dlg = new AssetsAutoMatchingMainDlg(new AssetsAutoMatchingInputViewModel()); - dlg.ShowDialog(); + if (_hydroInfo == null) + { + return; + } + var input = new AssetsAutoMatchingViewModel(); + input.PumpMatchingModels = _hydroInfo.Pumps?.Select(x => new PumpMatchingViewModel() + { + ID = x.ID, + Code = x.Code, + Name = x.Name, + DbID = x.DbId, + DbLocked = x.DbLocked, + ChartDbID = _hydroInfo.Curves?.Find(t => t.Code == x.CurveQH)?.DbId, + ModelType = x.ModelType, + RatedP = x.RatedP, + RatedH = x.RatedH, + RatedN = x.RatedN, + RatedQ = x.RatedQ, + }).ToList(); + input.ElbowsMatchingModels = _hydroInfo.Elbows?.Select(x => new ElbowsMatchingViewModel() + { + ID = x.ID, + Name = x.Name, + Code = x.Code, + Dbid = x.DbId, + DbLocked = x.DbLocked, + ModelType = x.ModelType, + Caliber = x.Caliber, + Material = x.Material + }).ToList(); + input.ThreeLinkMatchingModels = _hydroInfo.Threelinks?.Select(x => new ThreeLinkMatchingViewModel() + { + ID = x.ID, + Name = x.Name, + Code = x.Code, + DbId = x.DbId, + DbLocked = x.DbLocked, + ModelType = x.ModelType, + Caliber = x.Caliber, + Material = x.Material + }).ToList(); + input.FourLinkMatchingModels = _hydroInfo.Fourlinks?.Select(x => new FourLinkMatchingViewModel() + { + ID = x.ID, + Name = x.Name, + Code = x.Code, + Dbid = x.DbId, + DbLocked = x.DbLocked, + ModelType = x.ModelType, + Caliber = x.Caliber, + Material = x.Material + }).ToList(); + input.PipeLineMatchingModels = _hydroInfo.Pipes?.Select(x => new PipeLineMatchingViewModel() + { + ID = x.ID, + Name = x.Name, + Code = x.Code, + DbId = x.DbId, + DbLocked = x.DbLocked, + ModelType = x.ModelType, + Caliber = x.Diameter,//杩欓噷鏄暟鍊� + Material = x.Material + }).ToList(); + + input.ValveMatchingModels = _hydroInfo.Pipes?.Select(x => new ValveMatchingViewModel() + { + ID = x.ID, + Name = x.Name, + Code = x.Code, + DbId = x.DbId, + DbLocked = x.DbLocked, + ModelType = x.ModelType, + Caliber = x.Diameter,//杩欓噷鏄暟鍊� + Material = x.Material//鎬庝箞娌℃湁闃�闂ㄧ被鍨� + }).ToList(); + this.docPnlHydroCheck.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlHydroCalcu.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.hydroParterListCtrl1.SetBindingData(_hydroInfo); + this.docPnlHydroParterList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; + this.docPnlMatchingList.Height = 350; + this.assetsMainChoicePage1.SetBindingData(input); + this.assetsMainChoicePage1.RelaodEvent += (rhs) => + { + return false; + }; } private void BtnPerformChart_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) @@ -287,11 +402,28 @@ //姘村姏鏋勪欢鏄庣粏闈㈡澘鐐瑰嚮浜嬩欢 private async void hydroParterListCtrl1_HydroClickEvent(Yw.Model.HydroParterInfo parter) { - _parter = parter; - await this.xhsProjectSimulationBimfaceCtrl1.SetSelectedComponents(new List<string>() { parter.Code }); + var allParterList = _hydroInfo.GetAllParters(); + _parter = allParterList.Find(x => x.ID == parter.ID); + await this.xhsProjectSimulationBimfaceCtrl1.SetSelectedComponents(new List<string>() { _parter.Code }); ShowProperty(); } + //鏈尮閰嶅垪琛ㄧ偣鍑讳簨浠� + private async void xhsProjectSimulationUnMatchingListCtrl1_HydroClickEvent(Yw.Model.HydroParterInfo parter) + { + var allParterList = _hydroInfo.GetAllParters(); + _parter = allParterList.Find(x => x.ID == parter.ID); + await this.xhsProjectSimulationBimfaceCtrl1.SetSelectedComponents(new List<string>() { _parter.Code }); + ShowProperty(); + } + //鏈尮閰嶅垪琛ㄦ煡鐪嬫ā鍨� + private async void xhsProjectSimulationUnMatchingListCtrl1_ViewModelEvent(List<Yw.Model.HydroParterInfo> parters) + { + var codes = parters?.Select(x => x.Code).Distinct().ToList(); + await this.xhsProjectSimulationBimfaceCtrl1.AddSelectedComponents(codes); + _parter = null; + ShowProperty(); + } } } \ No newline at end of file -- Gitblit v1.9.3