From 158292021eb0b31e494b5fdc26a31c58af0bf01b Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期四, 26 九月 2024 11:55:04 +0800 Subject: [PATCH] 匹配修改 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/04-simulation/06-simulation/XhsProjectSimulationCorePage.cs | 349 ++++++++++++++++++++++++--------------------------------- 1 files changed, 146 insertions(+), 203 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 a783f69..7e2027b 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 @@ -26,7 +26,7 @@ private HStation.Vmo.XhsProjectVmo _project = null;//椤圭洰 private HStation.Vmo.XhsProjectSiteVmo _projectSite = null;//椤圭洰绔� private Yw.Model.HydroModelInfo _hydroInfo = null;//姘村姏淇℃伅 - private List<string> _fastShowHideCodeList = null;//鏄鹃殣缂栫爜鍒楄〃 + private Yw.Model.HydroParterInfo _parter = null; private Yw.EPAnet.CheckResult _checkResult = null; @@ -59,8 +59,6 @@ .GetDefaultByObjectTypeAndObjectIDOfPurpose(HStation.Xhs.DataType.XhsProjectSite, _projectSite.ID, HStation.Xhs.Purpose.Simulation); _hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(hydroRelation.ModelID); } - this.xhsProjectSimulationQ3dCtrl1.SetBindingData(_hydroInfo); - this.xhsProjectSimulationL3dCtrl1.SetBindingData(_hydroInfo); } /// <summary> @@ -74,7 +72,9 @@ return; } this.PageTitle.Caption = $"{_project.Name}\r\n姘村姏妯℃嫙"; - await this.xhsProjectSimulationBimfaceCtrl1.SetBindingData(_project, _projectSite); + await this.xhsProjectSimulationBimfaceCtrl1.SetBindingData(_project, _projectSite, () => _hydroInfo); + this.xhsProjectSimulationQ3dCtrl1.SetBindingData(_hydroInfo); + this.xhsProjectSimulationL3dCtrl1.SetBindingData(_hydroInfo); } //灞炴�ч潰鏉胯幏鍙栨按鍔涗俊鎭簨浠� @@ -83,28 +83,7 @@ return _hydroInfo; } - //涓�閿樉闅� - private async void barBtnShowHide_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - if (_hydroInfo == null) - { - return; - } - if (_hydroInfo.Decorators == null || _hydroInfo.Decorators.Count < 1) - { - return; - } - if (_fastShowHideCodeList == null) - { - _fastShowHideCodeList = _hydroInfo.Decorators.Select(x => x.Code).ToList(); - await this.xhsProjectSimulationBimfaceCtrl1.HideComponents(_fastShowHideCodeList); - } - else - { - await this.xhsProjectSimulationBimfaceCtrl1.ShowComponents(_fastShowHideCodeList); - _fastShowHideCodeList = null; - } - } + @@ -180,98 +159,7 @@ - //鑷姩鍖归厤 - private void barBtnAllAutoMatching_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - 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; - }; - } @@ -286,25 +174,152 @@ #region Bimface - //鑾峰彇姘村姏淇℃伅 - private Yw.Model.HydroModelInfo xhsProjectSimulationBimfaceCtrl1_GetHydroInfoEvent() - { - return _hydroInfo; - } - - //bimface 鏋勪欢鐐瑰嚮 - private void xhsProjectSimulationBimfaceCtrl1_ClickParterEvent(string objectId) + //bimface 鍔犺浇瀹屾垚浜嬩欢 + private async void xhsProjectSimulationBimfaceCtrl1_LoadCompletedEvent() { if (_hydroInfo == null) { return; } - var allParterList = _hydroInfo.GetAllParters(); - _parter = allParterList.Find(x => x.Code == objectId); + var elementIds = new List<string>(); + var pumps = _hydroInfo.Pumps?.Where(x => x.LinkStatus == Yw.Hydro.PumpStatus.Open).ToList(); + pumps?.ForEach(x => elementIds.Add(x.Code)); + var valves = _hydroInfo.Valves?.Where(x => x.LinkStatus == Yw.Hydro.ValveStatus.Open).ToList(); + valves?.ForEach(x => elementIds.Add(x.Code)); + await this.xhsProjectSimulationBimfaceCtrl1.SetOpenComponentsColor(elementIds); + } + + //bimface 姘村姏鐐瑰嚮浜嬩欢 + private void xhsProjectSimulationBimfaceCtrl1_HydroClickEvent(Yw.Model.HydroParterInfo obj) + { + if (_hydroInfo == null) + { + return; + } + _parter = obj; ShowProperty(); SetBimfaceLinkColor(); } + //璁剧疆Bimface杩炴帴棰滆壊 + private async void SetBimfaceLinkColor() + { + if (_hydroInfo == null) + { + return; + } + List<string> elementIds = null; + if (_parter != null) + { + if (_parter is Yw.Model.HydroLinkInfo linker) + { + elementIds = new List<string>() { linker.StartCode, linker.EndCode }; + } + } + await this.xhsProjectSimulationBimfaceCtrl1.SetLinkComponentsColor(elementIds); + } + + #endregion + + #region 鑷姩鍖归厤 + + //鑷姩鍖归厤 + private void barBtnAutoMatching_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.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; + + var input = AssetsMatchingParasHelper.Create(_hydroInfo); + this.assetsMainChoicePage1.SetBindingData(input); + this.assetsMainChoicePage1.RelaodEvent += (output) => + { + + AssetsMatchingParasHelper.Apply(_hydroInfo, output); + return true; + }; + this.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; + this.docPnlMatchingList.Height = 350; + } + + + #endregion + + #region 鏈尮閰嶅垪琛� + + //鏈尮閰嶅垪琛� + 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.docPnlMatchingList.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; + } + + //鏈尮閰嶅垪琛ㄧ偣鍑讳簨浠� + private async void xhsProjectSimulationUnMatchingListCtrl1_HydroClickEvent(Yw.Model.HydroParterInfo parter) + { + var allParterList = _hydroInfo.GetAllParters(); + _parter = allParterList.Find(x => x.ID == parter.ID); + var elementIds = new List<string>() { _parter.Code }; + await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(elementIds); + ShowProperty(); + } + + //鏈尮閰嶅垪琛ㄦ煡鐪嬫ā鍨� + private async void xhsProjectSimulationUnMatchingListCtrl1_ViewModelEvent(List<Yw.Model.HydroParterInfo> parters) + { + var codes = parters?.Select(x => x.Code).Distinct().ToList(); + await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(codes); + _parter = null; + ShowProperty(); + } + + + #endregion + + #region 涓�閿樉闅� + + //鏄鹃殣缂栫爜鍒楄〃 + private List<string> _fastShowHideCodeList = null; + + //瑙﹀彂涓�閿樉闅� + private async void barBtnShowHide_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + if (_hydroInfo == null) + { + return; + } + if (_hydroInfo.Decorators == null || _hydroInfo.Decorators.Count < 1) + { + return; + } + if (_fastShowHideCodeList == null) + { + _fastShowHideCodeList = _hydroInfo.Decorators.Select(x => x.Code).ToList(); + await this.xhsProjectSimulationBimfaceCtrl1.HideComponents(_fastShowHideCodeList); + } + else + { + await this.xhsProjectSimulationBimfaceCtrl1.ShowComponents(_fastShowHideCodeList); + _fastShowHideCodeList = null; + } + } #endregion @@ -351,47 +366,7 @@ #endregion - #region 鏈尮閰嶅垪琛� - //鏈尮閰嶅垪琛� - 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.docPnlMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Hidden; - - this.xhsProjectSimulationUnMatchingListCtrl1.SetBindingData(_hydroInfo); - this.docPnlUnMatchingList.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; - this.docPnlUnMatchingList.Height = 350; - } - - //鏈尮閰嶅垪琛ㄧ偣鍑讳簨浠� - private async void xhsProjectSimulationUnMatchingListCtrl1_HydroClickEvent(Yw.Model.HydroParterInfo parter) - { - var allParterList = _hydroInfo.GetAllParters(); - _parter = allParterList.Find(x => x.ID == parter.ID); - var elementIds = new List<string>() { _parter.Code }; - await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(elementIds); - ShowProperty(); - } - - //鏈尮閰嶅垪琛ㄦ煡鐪嬫ā鍨� - private async void xhsProjectSimulationUnMatchingListCtrl1_ViewModelEvent(List<Yw.Model.HydroParterInfo> parters) - { - var codes = parters?.Select(x => x.Code).Distinct().ToList(); - await this.xhsProjectSimulationBimfaceCtrl1.ZoomAndSelectComponents(codes); - _parter = null; - ShowProperty(); - } - - - #endregion #region 淇濆瓨姘村姏淇℃伅 @@ -414,11 +389,6 @@ #endregion - - private void barBtnOpenView_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - SetBimfaceOpenColor(); - } #region 涓氬姟鏂规硶 @@ -472,43 +442,16 @@ } } - //璁剧疆Bimface杩炴帴棰滆壊 - private async void SetBimfaceLinkColor() - { - if (_hydroInfo == null) - { - return; - } - List<string> elementIds = null; - if (_parter != null) - { - if (_parter is Yw.Model.HydroLinkInfo linker) - { - elementIds = new List<string>() { linker.StartCode, linker.EndCode }; - } - } - await this.xhsProjectSimulationBimfaceCtrl1.SetLinkComponentsColor(elementIds); - } - //璁剧疆Bimface Open 棰滆壊 - private async void SetBimfaceOpenColor() - { - if (_hydroInfo == null) - { - return; - } - var elementIds = new List<string>(); - var pumps = _hydroInfo.Pumps?.Where(x => x.LinkStatus == Yw.Hydro.PumpStatus.Open).ToList(); - pumps?.ForEach(x => elementIds.Add(x.Code)); - var valves = _hydroInfo.Valves?.Where(x => x.LinkStatus == Yw.Hydro.ValveStatus.Open).ToList(); - valves?.ForEach(x => elementIds.Add(x.Code)); - await this.xhsProjectSimulationBimfaceCtrl1.SetOpenComponentsColor(elementIds); - } + #endregion + + + } } \ No newline at end of file -- Gitblit v1.9.3