From 8486fdaaf94faddbf7e475c660726f9a71b72a4b Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期一, 02 十二月 2024 21:14:07 +0800 Subject: [PATCH] 修复phart问题 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/02-page/XhsProjectSimulationSchemePage.cs | 817 +++++++++++++++++++++++++++++++++++++++------------------ 1 files changed, 554 insertions(+), 263 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/02-page/XhsProjectSimulationSchemePage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/02-page/XhsProjectSimulationSchemePage.cs index df8c60f..40eaf07 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/02-page/XhsProjectSimulationSchemePage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/04-scheme/02-page/XhsProjectSimulationSchemePage.cs @@ -6,11 +6,11 @@ using Mapster; using NPOI.SS.Formula.Functions; using System.Diagnostics; +using Yw.EPAnet; using Yw.Hydro; using Yw.Model; using Yw.Vmo; using Yw.WinFrmUI.Q3d; -using Yw.EPAnet; namespace HStation.WinFrmUI { @@ -584,121 +584,6 @@ #endregion - #region 鑷姩鍖归厤 - - //鑾峰彇鍖归厤鍒楄〃鎺т欢 - private XhsProjectSimulationMatchingListCtrl GetMatchingListCtrl() - { - if (_matchingListCtrl == null) - { - _matchingListCtrl = new XhsProjectSimulationMatchingListCtrl(); - _matchingListCtrl.Dock = DockStyle.Fill; - _matchingListCtrl.HydroClickEvent += async (code) => - { - if (_hydroInfo == null) - { - return; - } - var allParterList = _hydroInfo.GetAllVisuals(); - _visual = allParterList?.Find(x => x.Code == code); - var elementIds = new List<string>(); - if (_visual != null) - { - elementIds.Add(_visual.Code); - } - await _bimfaceCtrl?.ZoomAndSelectComponents(elementIds); - //ShowSelectedProperty(); - }; - _matchingListCtrl.ApplyMatchingEvent += (output) => - { - if (_hydroInfo == null) - { - return false; - } - return AssetsMatchingParasHelper.Apply(_hydroInfo, output); - }; - } - return _matchingListCtrl; - } - - //鍖归厤鍒楄〃鎺т欢 - private XhsProjectSimulationMatchingListCtrl _matchingListCtrl = null; - - //鑷姩鍖归厤 - private void barBtnMatchingList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - if (_hydroInfo == null) - { - return; - } - this.controlContainerBottom.Controls.Clear(); - var matchingListCtrl = GetMatchingListCtrl(); - var input = AssetsMatchingParasHelper.Create(_hydroInfo, null); - matchingListCtrl.SetBindingData(input); - this.controlContainerBottom.Controls.Add(matchingListCtrl); - this.docPnlBottom.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; - this.docPnlBottom.Text = "鍖归厤鍒楄〃"; - this.docPnlBottom.Height = 350; - } - - #endregion - - #region 鏈尮鍒楄〃 - - //鑾峰彇鏈尮閰嶅垪琛ㄦ帶浠� - private XhsProjectSimulationUnMatchingListCtrl GetUnMatchingListCtrl() - { - if (_unMatchingListCtrl == null) - { - _unMatchingListCtrl = new XhsProjectSimulationUnMatchingListCtrl(); - _unMatchingListCtrl.Dock = DockStyle.Fill; - _unMatchingListCtrl.HydroClickEvent += async (parter) =>//琛岀偣鍑� - { - if (parter == null) - { - return; - } - if (_hydroInfo == null) - { - return; - } - var allParterList = _hydroInfo.GetAllVisuals(); - _visual = allParterList?.Find(x => x.Code == parter.Code); - var elementIds = new List<string>() { parter.Code }; - await _bimfaceCtrl?.ZoomAndSelectComponents(elementIds); - //ShowSelectedProperty(); - }; - _unMatchingListCtrl.ViewModelEvent += async (parters) =>//鏌ョ湅妯″瀷 - { - var codes = parters?.Select(x => x.Code).Distinct().ToList(); - await _bimfaceCtrl?.ZoomAndSelectComponents(codes); - _visual = null; - //ShowSelectedProperty(); - }; - } - return _unMatchingListCtrl; - } - - private XhsProjectSimulationUnMatchingListCtrl _unMatchingListCtrl = null;//鏈尮閰嶅垪琛� - - //鏈尮閰嶅垪琛� - private void barBtnUnMatchingList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - if (_hydroInfo == null) - { - return; - } - this.controlContainerBottom.Controls.Clear(); - var unMatchingListCtrl = GetUnMatchingListCtrl(); - unMatchingListCtrl.SetBindingData(_hydroInfo); - this.controlContainerBottom.Controls.Add(unMatchingListCtrl); - this.docPnlBottom.Visibility = DevExpress.XtraBars.Docking.DockVisibility.Visible; - this.docPnlBottom.Text = "鏈尮閰嶅垪琛�"; - this.docPnlBottom.Height = 350; - } - - #endregion - #region 涓�閿樉闅� //璁剧疆瑁呴グ浠跺彲瑙佹�� @@ -750,6 +635,403 @@ } _hydroInfo = await BLLFactory<Yw.BLL.HydroModelInfo>.Instance.GetByID(id); TipFormHelper.ShowSucceed("淇濆瓨鎴愬姛锛�"); + } + + #endregion + + #region 鎵归噺閰嶇疆 + + //娉ㄥ唽鎵归噺閰嶇疆浜嬩欢 + private void RegistBulkSetEvents() + { + //姘村簱 + this.barBtnSetReservoirList.ItemClick += delegate + { + //var dlg = new HydroReservoirBulkSetListDlg(); + //dlg.ShowDialog(); + }; + //姘存睜 + this.barBtnSetTankList.ItemClick += delegate + { + //var dlg = new HydroTankBulkSetListDlg(); + //dlg.ShowDialog(); + }; + //姘寸 + this.barBtnSetWaterboxList.ItemClick += delegate + { + //if (_hydroInfo == null) + //{ + // return; + //} + //var dlg = new SetHydroWaterboxListDlg(); + //dlg.SetBindingData(_hydroInfo); + //dlg.HydroClickEvent += async (obj) => + //{ + // if (obj == null) + // { + // return; + // } + // _selectedParter = obj; + // await _bimfaceCtrl?.ZoomAndSelectComponent(obj.Code); + // ShowProperty(); + //}; + //dlg.HydroChangedEvent += (obj) => + //{ + + //}; + //dlg.ShowDialog(); + }; + //杩炴帴鑺傜偣 + this.barBtnSetJunctionList.ItemClick += delegate + { + //var dlg = new HydroJunctionBulkSetListDlg(); + //dlg.ShowDialog(); + }; + //闂峰ご + this.barBtnSetBluntheadList.ItemClick += delegate + { + //if (_hydroInfo == null) + //{ + // return; + //} + //var dlg = new SetHydroBluntheadListDlg(); + //dlg.SetBindingData(_hydroInfo); + //dlg.HydroClickEvent += async (obj) => + //{ + // if (obj == null) + // { + // return; + // } + // _selectedParter = obj; + // await _bimfaceCtrl?.ZoomAndSelectComponent(obj.Code); + // ShowProperty(); + //}; + //dlg.HydroChangedEvent += (obj) => + //{ + + //}; + //dlg.ShowDialog(); + }; + //寮ご + this.barBtnSetElbowsList.ItemClick += delegate + { + //if (_hydroInfo == null) + //{ + // return; + //} + //var dlg = new SetHydroElbowListDlg(); + //dlg.SetBindingData(_hydroInfo); + //dlg.HydroClickEvent += async (obj) => + //{ + // if (obj == null) + // { + // return; + // } + // _selectedParter = obj; + // await _bimfaceCtrl?.ZoomAndSelectComponent(obj.Code); + // ShowProperty(); + //}; + //dlg.HydroChangedEvent += (obj) => + //{ + + //}; + //dlg.ShowDialog(); + }; + //涓夐�� + this.barBtnSetThreelinkList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroThreelinkListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //鍥涢�� + this.barBtnSetFourlinkList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroFourlinkListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //姘磋〃 + this.barBtnSetMeterList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroMeterListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //娴侀噺璁� + this.barBtnSetFlowmeterList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroFlowmeterListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //鍘嬪姏琛� + this.barBtnSetPressmeterList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroPressmeterListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //绠¢亾 + this.barBtnSetPipeList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroPipeListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //姘存车 + this.barBtnSetPumpList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroPumpListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + //闃�闂� + this.barBtnSetValveList.ItemClick += delegate + { + if (_hydroInfo == null) + { + return; + } + var dlg = new SetHydroValveListDlg(); + dlg.SetBindingData(_hydroInfo); + dlg.ShowDialog(); + }; + } + + + //鏄剧ずRadialMenu + private void barBtnSetList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + this.rmSet.ShowPopup(MousePosition, true); + } + + //寮瑰嚭鍓� + private void rmSet_BeforePopup(object sender, CancelEventArgs e) + { + if (_hydroInfo == null) + { + e.Cancel = true; + return; + } + //姘村簱 + if (_hydroInfo.Reservoirs == null || _hydroInfo.Reservoirs.Count < 1) + { + this.barBtnSetReservoirList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetReservoirList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //姘存睜 + if (_hydroInfo.Tanks == null || _hydroInfo.Tanks.Count < 1) + { + this.barBtnSetTankList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetTankList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //姘寸 + if (_hydroInfo.Waterboxs == null || _hydroInfo.Waterboxs.Count < 1) + { + this.barBtnSetWaterboxList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetWaterboxList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //杩炴帴鑺傜偣 + if (_hydroInfo.Junctions == null || _hydroInfo.Junctions.Count < 1) + { + this.barBtnSetJunctionList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetJunctionList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //鍠峰槾 + if (_hydroInfo.Nozzles == null || _hydroInfo.Nozzles.Count < 1) + { + this.barBtnSetNozzleList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetNozzleList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //娑堢伀鏍� + if (_hydroInfo.Hydrants == null || _hydroInfo.Hydrants.Count < 1) + { + this.barBtnSetHydrantList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetHydrantList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //闂峰ご + if (_hydroInfo.Bluntheads == null || _hydroInfo.Bluntheads.Count < 1) + { + this.barBtnSetBluntheadList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetBluntheadList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //寮ご + if (_hydroInfo.Elbows == null || _hydroInfo.Elbows.Count < 1) + { + this.barBtnSetElbowsList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetElbowsList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //涓夐�� + if (_hydroInfo.Threelinks == null || _hydroInfo.Threelinks.Count < 1) + { + this.barBtnSetThreelinkList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetThreelinkList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //鍥涢�� + if (_hydroInfo.Fourlinks == null || _hydroInfo.Fourlinks.Count < 1) + { + this.barBtnSetFourlinkList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetFourlinkList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //姘磋〃 + if (_hydroInfo.Meters == null || _hydroInfo.Meters.Count < 1) + { + this.barBtnSetMeterList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetMeterList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //娴侀噺璁� + if (_hydroInfo.Flowmeters == null || _hydroInfo.Flowmeters.Count < 1) + { + this.barBtnSetFlowmeterList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetFlowmeterList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //鍘嬪姏琛� + if (_hydroInfo.Pressmeters == null || _hydroInfo.Pressmeters.Count < 1) + { + this.barBtnSetPressmeterList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetPressmeterList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //绠¢亾 + if (_hydroInfo.Pipes == null || _hydroInfo.Pipes.Count < 1) + { + this.barBtnSetPipeList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetPipeList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //杩囨浮浠� + if (_hydroInfo.Translations == null || _hydroInfo.Translations.Count < 1) + { + this.barBtnSetTranslationList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetTranslationList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //鎹㈢儹鍣� + if (_hydroInfo.Exchangers == null || _hydroInfo.Exchangers.Count < 1) + { + this.barBtnSetExchangerList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetExchangerList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //绌哄帇鏈� + if (_hydroInfo.Compressors == null || _hydroInfo.Compressors.Count < 1) + { + this.barBtnSetCompressorList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetCompressorList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //姘存车 + if (_hydroInfo.Pumps == null || _hydroInfo.Pumps.Count < 1) + { + this.barBtnSetPumpList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetPumpList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + + //闃�闂� + if (_hydroInfo.Valves == null || _hydroInfo.Valves.Count < 1) + { + this.barBtnSetValveList.Visibility = DevExpress.XtraBars.BarItemVisibility.Never; + } + else + { + this.barBtnSetValveList.Visibility = DevExpress.XtraBars.BarItemVisibility.Always; + } + } #endregion @@ -1569,9 +1851,9 @@ { return; } - var network = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); - var json = JsonHelper.Object2Json(network); - var result = network.ToInpString(); + var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydroInfo); + var json = JsonHelper.Object2Json(netWork); + var result = netWork.ToInpString(); File.WriteAllText(fileName, result); TipFormHelper.ShowSucceed("瀵煎嚭鎴愬姛"); } @@ -1631,26 +1913,26 @@ } - var dlg = new PumpParallelAnalyDlg(); - dlg.SetBindingData(vmList); - dlg.ReloadDataEvent += (list) => - { - list?.ForEach(x => - { - var pump = pumps.Find(t => t.Code == x.Code); - if (pump != null) - { - pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed; - pump.SpeedRatio = x.CurrentHz / pump.RatedHz; - } - }); - var codes = list?.Select(x => x.Code).ToList(); - //UpdateVisualViewModelProperty(codes); - //ShowSelectedProperty(); - UpdateVisualListCtrl(); - return true; - }; - dlg.ShowDialog(); + //var dlg = new PumpParallelAnalyDlg(); + //dlg.SetBindingData(vmList); + //dlg.ReloadDataEvent += (list) => + //{ + // list?.ForEach(x => + // { + // var pump = pumps.Find(t => t.Code == x.Code); + // if (pump != null) + // { + // pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed; + // pump.SpeedRatio = x.CurrentHz / pump.RatedHz; + // } + // }); + // var codes = list?.Select(x => x.Code).ToList(); + // //UpdateVisualViewModelProperty(codes); + // //ShowSelectedProperty(); + // UpdateVisualListCtrl(); + // return true; + //}; + //dlg.ShowDialog(); } //骞惰仈妯℃嫙 @@ -1690,12 +1972,12 @@ var hydroInfo = _hydroInfo.Adapt<Yw.Model.HydroModelInfo>(); var working = new HydroWorkingVmo(); - working.ModelID = _hydroInfo.ID; - working.Name = working.Name; - working.WorkingInfo = JsonHelper.Object2Json(working.WorkingInfo); - working.MonitorInfo = JsonHelper.Object2Json(working.MonitorInfo); - working.SortCode = working.SortCode; - working.Description = working.Description; + working.ModelID = vm.ModelID; + working.Name = vm.Name; + working.WorkingInfo = JsonHelper.Object2Json(vm.WorkingInfo); + working.MonitorInfo = JsonHelper.Object2Json(vm.MonitorInfo); + working.SortCode = vm.SortCode; + working.Description = vm.Description; var workingHelper = GetWorkingHelper(); //鏍¢獙 @@ -1751,8 +2033,6 @@ //姘村姏璁$畻 private void barBtnCalcu_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - var network = _hydroInfo.ToW3dNetworkViewModel(); - var json = JsonHelper.Object2Json(network); Calcu(); } @@ -1851,67 +2131,36 @@ #region 宸ュ喌鍒嗘瀽 - #region 宸ュ喌璇勪及 - - //璇勪及 - private async void Evaluate() + //绮惧害璇勪及 + private async void barBtnWorkingEvaluation_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - if (_hydroInfo == null) - { - return; - } - var working = GetWorking(); - if (working == null) - { - TipFormHelper.ShowWarn("灏氭湭璁$畻锛岃璁$畻鍚庨噸璇曪紒"); - return; - } - var checkResult = GetCheckResult(); - if (checkResult == null) - { - return; - } - if (!checkResult.Succeed) - { - ShowCheckCtrl(checkResult); - TipFormHelper.ShowWarn("妫�鏌ュけ璐ワ紝鍋滄璇勪及锛�"); - return; - } - var calcuResult = GetCalcuResult(); - if (!calcuResult.Succeed) - { - ShowCalcuFailedCtrl(calcuResult); - TipFormHelper.ShowWarn("璁$畻澶辫触锛屽仠姝㈣瘎浼帮紒"); - return; - } - if (calcuResult.WainingList != null && calcuResult.WainingList.Count > 0) - { - ShowCalcuWarningCtrl(calcuResult); - TipFormHelper.ShowWarn("璇峰叧娉ㄨ鍛婁俊鎭紒"); - } - var visualListHelper = GetVisualListHelper(); - var allVisualDict = visualListHelper.GetVisualDict(); var monitorHelper = GetMonitorHelper(); var allMonitorList = await monitorHelper.Get(); - var allWorkingMonitorList = JsonHelper.Json2Object<List<HydroWorkingMonitorViewModel>>(working.MonitorInfo); - var allCalcuResultDict = calcuResult.GetVisualDict(); - var dlg = new HydroWorkingEvaluationDlg(); - dlg.SetBindingData(allVisualDict, allMonitorList, allWorkingMonitorList, allCalcuResultDict); - dlg.ShowDialog(); + + var workingCheckedListHelper = GetWorkingCheckedListHelper(); + var allCheckedWorkingList = workingCheckedListHelper.GetCheckedWorkingList(); + if (allCheckedWorkingList == null || allCheckedWorkingList.Count < 1) + { + var workingHelper = GetWorkingHelper(); + if (!workingHelper.Initialized) + { + TipFormHelper.ShowWarn("璇疯绠楀悗閲嶈瘯锛�"); + return; + } + var dlg = new HydroSingleWorkingEvaluationDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, allMonitorList, workingHelper.Working, workingHelper.CalcuResult); + dlg.ShowDialog(); + } + else + { + var dlg = new HydroMultiWorkingEvaluationDlg(); + dlg.SetBindingData(_hydroInfo, allMonitorList, allCheckedWorkingList); + dlg.ShowDialog(); + } } - //绮惧害璇勪及 - private void barBtnWorkingEvaluation_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - Evaluate(); - } - - #endregion - - #region 宸ュ喌骞惰仈 - - //骞惰仈鍒嗘瀽 - private void barBtnAnaly_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + //姘存车鍒嗘瀽 + private void barBtnPumpAnaly_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (_hydroInfo == null) { @@ -1982,76 +2231,90 @@ } - var dlg = new PumpParallelAnalyDlg(); - dlg.SetBindingData(vmList); - dlg.ReloadDataEvent += (list) => - { - list?.ForEach(x => - { - var pump = _hydroInfo.Pumps?.Find(t => t.Code == x.Code); - if (pump != null) - { - pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed; - pump.SpeedRatio = Math.Round(x.CurrentHz / pump.RatedHz, 1); - } - }); - //ShowSelectedProperty(); - return true; - }; - dlg.ShowDialog(); + //var dlg = new PumpParallelAnalyDlg(); + //dlg.SetBindingData(vmList); + //dlg.ReloadDataEvent += (list) => + //{ + // list?.ForEach(x => + // { + // var pump = _hydroInfo.Pumps?.Find(t => t.Code == x.Code); + // if (pump != null) + // { + // pump.LinkStatus = x.RunStatus ? Yw.Hydro.PumpStatus.Open : Yw.Hydro.PumpStatus.Closed; + // pump.SpeedRatio = Math.Round(x.CurrentHz / pump.RatedHz, 1); + // } + // }); + // //ShowSelectedProperty(); + // return true; + //}; + //dlg.ShowDialog(); } - #endregion - - #region 宸ュ喌鑳芥晥 - + //鑳芥晥鍒嗘瀽 private void barBtnWorkingPower_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - var workingHelper = GetWorkingHelper(); - var dlg = new SimulationSingleWorkingEnergyDlg(); - dlg.SetBindingData(workingHelper.HydroInfo, workingHelper.CalcuResult); - dlg.ShowDialog(); + var workingCheckedListHelper = GetWorkingCheckedListHelper(); + var allCheckedWorkingList = workingCheckedListHelper.GetCheckedWorkingList(); + if (allCheckedWorkingList == null || allCheckedWorkingList.Count < 1) + { + var workingHelper = GetWorkingHelper(); + if (!workingHelper.Initialized) + { + TipFormHelper.ShowWarn("璇疯绠楀悗閲嶈瘯锛�"); + return; + } + var dlg = new SimulationSingleWorkingEnergyDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, workingHelper.CalcuResult); + dlg.ShowDialog(); + } + else + { + var dlg = new SimulationMultiWorkingEnergyDlg(); + dlg.SetBindingData(_hydroInfo, allCheckedWorkingList); + dlg.ShowDialog(); + } } - #endregion - - #region 鎹熷け鏇茬嚎 - + //鎹熷け鏇茬嚎 private void barBtnWorkingLossCurve_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { if (_visual == null) { - XtraMessageBox.Show("璇烽�夋嫨鑺傜偣鍚庨噸璇曪紒"); + TipFormHelper.ShowWarn("璇烽�夋嫨鏋勪欢鍚庨噸璇曪紒"); return; } - if (!(_visual is Yw.Model.HydroNodeInfo)) + HydroVisualInfo visual = _visual; + if (_visual is HydroLinkInfo linkInfo) { - XtraMessageBox.Show("璇烽�夋嫨鑺傜偣鍚庨噸璇曪紒"); - return; + var visualListHelper = GetVisualListHelper(); + visual = visualListHelper.GetVisual(linkInfo.StartCode); } - var network = _hydroInfo.ToNetwork(); - var calcuResult = network.Calcu(Yw.EPAnet.CalcuMode.Simple); - var allNodeList = network.GetAllNodes(); - var node = allNodeList.Find(x => x.Id == _visual.Code); - var allPathList = network.AnalyzeDownstreamPath(node, calcuResult); - var allEpaLossList = network.GetChartNodeByPathLinks(allPathList, calcuResult); - var allLossList = allEpaLossList?.Select(x => new HydroNodeLossViewModel(x)).ToList(); - var dlg = new HydroSingleLossCurveDlg(); - dlg.SetBindingData(allLossList); - dlg.ShowDialog(); + + var workingCheckedListHelper = GetWorkingCheckedListHelper(); + var allCheckedWorkingList = workingCheckedListHelper.GetCheckedWorkingList(); + if (allCheckedWorkingList == null || allCheckedWorkingList.Count < 1) + { + var workingHelper = GetWorkingHelper(); + if (!workingHelper.Initialized) + { + TipFormHelper.ShowWarn("璇疯绠楀悗閲嶈瘯锛�"); + return; + } + var dlg = new HydroSingleWorkingLossCurveDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, workingHelper.CalcuResult, visual); + dlg.ShowDialog(); + } + else + { + var dlg = new HydroMultiWorkingLossCurveDlg(); + dlg.SetBindingData(_hydroInfo, allCheckedWorkingList, visual); + dlg.ShowDialog(); + } } - - #endregion - - #region 鎹熷け缁熻 //鎹熷け缁熻 private void barBtnWorkingLossStatistics_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - if (_hydroInfo == null) - { - return; - } var workingCheckedListHelper = GetWorkingCheckedListHelper(); var allCheckedWorkingList = workingCheckedListHelper.GetCheckedWorkingList(); if (allCheckedWorkingList == null || allCheckedWorkingList.Count < 1) @@ -2072,19 +2335,47 @@ dlg.SetBindingData(_hydroInfo, allCheckedWorkingList); dlg.ShowDialog(); } - - } - #endregion - - #region 缁煎悎鍒嗘瀽 - private void barBtnWorkingAnaly_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + //缁煎悎鍒嗘瀽 + private async void barBtnWorkingAnaly_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - XtraMessageBox.Show("姝e湪寮�鍙戜腑锛屾暚璇锋湡寰咃紒"); - } + if (_visual == null) + { + TipFormHelper.ShowWarn("璇烽�夋嫨鏋勪欢鍚庨噸璇曪紒"); + return; + } + HydroVisualInfo visual = _visual; + if (_visual is HydroLinkInfo linkInfo) + { + var visualListHelper = GetVisualListHelper(); + visual = visualListHelper.GetVisual(linkInfo.StartCode); + } - #endregion + var monitorHelper = GetMonitorHelper(); + var allMonitorList = await monitorHelper.Get(); + + var workingCheckedListHelper = GetWorkingCheckedListHelper(); + var allCheckedWorkingList = workingCheckedListHelper.GetCheckedWorkingList(); + if (allCheckedWorkingList == null || allCheckedWorkingList.Count < 1) + { + var workingHelper = GetWorkingHelper(); + if (!workingHelper.Initialized) + { + TipFormHelper.ShowWarn("璇疯绠楀悗閲嶈瘯锛�"); + return; + } + var dlg = new SimulationSingleWorkingAnalyDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, allMonitorList, workingHelper.Working, workingHelper.CalcuResult, visual); + dlg.ShowDialog(); + } + else + { + var dlg = new SimulationMultiWorkingAnalyDlg(); + dlg.SetBindingData(_hydroInfo, allMonitorList, allCheckedWorkingList, visual); + dlg.ShowDialog(); + } + } #endregion -- Gitblit v1.9.3