From e39e22e12380551c79f99a9c96bb77d5dc3839b1 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期四, 28 十一月 2024 12:25:33 +0800 Subject: [PATCH] 工况分析优化 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/HStation.WinFrmUI.Xhs.Core.csproj | 1 WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResult.cs | 18 WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.resx | 3 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.Designer.cs | 89 +-- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.cs | 254 ++++------- WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorValueExtensions.cs | 26 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.Designer.cs | 44 + WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveDlg.cs | 45 + WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.resx | 98 ++-- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/02-visual/02-list/SimulationVisualListHelper.cs | 30 - WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/03-statistics/HydroSingleWorkingLossStatisticsDlg.cs | 40 + /dev/null | 210 ---------- WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/05-extensions/HydroModelInfoExtensions.cs | 196 +++++++++ WinFrmUI/HStation.WinFrmUI.Xhs.Core/Resources/pump_run_32.png | 0 WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveCtrl.cs | 2 WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.Designer.cs | 10 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.resx | 69 --- WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.cs | 19 WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.Designer.cs | 91 ++-- WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueViewModel.cs | 5 20 files changed, 576 insertions(+), 674 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/02-visual/02-list/SimulationVisualListHelper.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/02-visual/02-list/SimulationVisualListHelper.cs index c1e30c8..3e43f5f 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/02-visual/02-list/SimulationVisualListHelper.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/00-core/02-visual/02-list/SimulationVisualListHelper.cs @@ -33,22 +33,14 @@ { return; } - _dict = new Dictionary<string, HydroVisualInfo>(); - var allVisualList = this.HydroInfo.GetAllVisuals(); - allVisualList?.ForEach(x => _dict.Add(x.Code, x)); + _dict = hydroInfo?.GetVisualDict(); } - - /// <summary> /// 鑾峰彇鍙瀛楀吀 /// </summary> public Dictionary<string, HydroVisualInfo> GetVisualDict() { - if (_hydroInfo == null) - { - return default; - } return _dict; } @@ -57,10 +49,6 @@ /// </summary> public List<HydroVisualInfo> GetVisualList() { - if (_hydroInfo == null) - { - return default; - } return _dict?.Values.ToList(); } @@ -69,11 +57,7 @@ /// </summary> public List<HydroNodeInfo> GetNodeList() { - if (_hydroInfo == null) - { - return default; - } - var nodes = _hydroInfo.GetAllNodes(); + var nodes = _hydroInfo?.GetAllNodes(); return nodes; } @@ -82,11 +66,7 @@ /// </summary> public List<HydroLinkInfo> GetLinkList() { - if (_hydroInfo == null) - { - return default; - } - var links = _hydroInfo.GetAllLinks(); + var links = _hydroInfo?.GetAllLinks(); return links; } @@ -95,10 +75,6 @@ /// </summary> public HydroVisualInfo GetVisual(string code) { - if (_hydroInfo == null) - { - return default; - } if (_dict == null || _dict.Count < 1) { return default; diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.Designer.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.Designer.cs index bb13454..ede83c1 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.Designer.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.Designer.cs @@ -37,20 +37,18 @@ barBtnVisualList = new DevExpress.XtraBars.BarButtonItem(); barBtnWorkingParallel = new DevExpress.XtraBars.BarButtonItem(); barBtnSearch = new DevExpress.XtraBars.BarButtonItem(); - barBtnSetGradingList = new DevExpress.XtraBars.BarButtonItem(); barBtnApplyGradingList = new DevExpress.XtraBars.BarButtonItem(); barBtnSetMark = new DevExpress.XtraBars.BarButtonItem(); - barBtnSetMonitorValue = new DevExpress.XtraBars.BarButtonItem(); + barBtnShowMonitorValue = new DevExpress.XtraBars.BarButtonItem(); barCkMonitor = new DevExpress.XtraBars.BarCheckItem(); barCkMark = new DevExpress.XtraBars.BarCheckItem(); barCkFlowEffect = new DevExpress.XtraBars.BarCheckItem(); barCkGrading = new DevExpress.XtraBars.BarCheckItem(); barCkCalcu = new DevExpress.XtraBars.BarCheckItem(); barBtnWorkingLossCurve = new DevExpress.XtraBars.BarButtonItem(); - barBtnWorkingLossScale = new DevExpress.XtraBars.BarButtonItem(); + barBtnWorkingLossStatistics = new DevExpress.XtraBars.BarButtonItem(); barBtnWorkingPower = new DevExpress.XtraBars.BarButtonItem(); barBtnWorkingAnaly = new DevExpress.XtraBars.BarButtonItem(); - barBtnPumpParallel = new DevExpress.XtraBars.BarButtonItem(); barBtnWorkingEvaluation = new DevExpress.XtraBars.BarButtonItem(); barBtnSetVisualVisible = new DevExpress.XtraBars.BarButtonItem(); barCkDecorator = new DevExpress.XtraBars.BarCheckItem(); @@ -59,8 +57,8 @@ ribbonPageGroup6 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); ribbonPageGroup1 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); ribbonPageGroup7 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); - ribbonPageGroup5 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); ribbonPageGroup9 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); + ribbonPageGroup2 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); ribbonPageGroup4 = new DevExpress.XtraBars.Ribbon.RibbonPageGroup(); tabPane1 = new DevExpress.XtraBars.Navigation.TabPane(); tabPageBimface = new DevExpress.XtraBars.Navigation.TabNavigationPage(); @@ -82,7 +80,7 @@ // ribbonControl1.ExpandCollapseItem.Id = 0; ribbonControl1.ItemPanelStyle = DevExpress.XtraBars.Ribbon.RibbonItemPanelStyle.Classic; - ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, barBtnExportInp, barBtnVisualList, barBtnWorkingParallel, barBtnSearch, barBtnSetGradingList, barBtnApplyGradingList, barBtnSetMark, barBtnSetMonitorValue, barCkMonitor, barCkMark, barCkFlowEffect, barCkGrading, barCkCalcu, barBtnWorkingLossCurve, barBtnWorkingLossScale, barBtnWorkingPower, barBtnWorkingAnaly, barBtnPumpParallel, barBtnWorkingEvaluation, barBtnSetVisualVisible, barCkDecorator }); + ribbonControl1.Items.AddRange(new DevExpress.XtraBars.BarItem[] { ribbonControl1.ExpandCollapseItem, barBtnExportInp, barBtnVisualList, barBtnWorkingParallel, barBtnSearch, barBtnApplyGradingList, barBtnSetMark, barBtnShowMonitorValue, barCkMonitor, barCkMark, barCkFlowEffect, barCkGrading, barCkCalcu, barBtnWorkingLossCurve, barBtnWorkingLossStatistics, barBtnWorkingPower, barBtnWorkingAnaly, barBtnWorkingEvaluation, barBtnSetVisualVisible, barCkDecorator }); ribbonControl1.Location = new Point(0, 0); ribbonControl1.MaxItemId = 80; ribbonControl1.Name = "ribbonControl1"; @@ -101,7 +99,6 @@ barBtnExportInp.Id = 4; barBtnExportInp.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnExportInp.ImageOptions.SvgImage"); barBtnExportInp.Name = "barBtnExportInp"; - barBtnExportInp.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barBtnExportInp.ItemClick += barBtnExportInp_ItemClick; // // barBtnVisualList @@ -116,7 +113,8 @@ // barBtnWorkingParallel.Caption = "姘存车鍒嗘瀽"; barBtnWorkingParallel.Id = 31; - barBtnWorkingParallel.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingParallel.ImageOptions.SvgImage"); + barBtnWorkingParallel.ImageOptions.Image = Xhs.Core.Properties.Resources.pump_run_32; + barBtnWorkingParallel.ImageOptions.LargeImage = Xhs.Core.Properties.Resources.pump_run_32; barBtnWorkingParallel.Name = "barBtnWorkingParallel"; barBtnWorkingParallel.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barBtnWorkingParallel.ItemClick += barBtnAnaly_ItemClick; @@ -129,14 +127,6 @@ barBtnSearch.Name = "barBtnSearch"; barBtnSearch.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barBtnSearch.ItemClick += barBtnSearch_ItemClick; - // - // barBtnSetGradingList - // - barBtnSetGradingList.Caption = "閰嶇疆"; - barBtnSetGradingList.Id = 34; - barBtnSetGradingList.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSetGradingList.ImageOptions.SvgImage"); - barBtnSetGradingList.Name = "barBtnSetGradingList"; - barBtnSetGradingList.ItemClick += barBtnSetGradingList_ItemClick; // // barBtnApplyGradingList // @@ -153,17 +143,16 @@ barBtnSetMark.Id = 40; barBtnSetMark.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSetMark.ImageOptions.SvgImage"); barBtnSetMark.Name = "barBtnSetMark"; - barBtnSetMark.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barBtnSetMark.ItemClick += barBtnSetMark_ItemClick; // - // barBtnSetMonitorValue + // barBtnShowMonitorValue // - barBtnSetMonitorValue.Caption = "鐩戞祴鍊�"; - barBtnSetMonitorValue.Id = 57; - barBtnSetMonitorValue.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSetMonitorValue.ImageOptions.SvgImage"); - barBtnSetMonitorValue.Name = "barBtnSetMonitorValue"; - barBtnSetMonitorValue.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; - barBtnSetMonitorValue.ItemClick += barBtnSetMonitorValue_ItemClick; + barBtnShowMonitorValue.Caption = "鐩戞祴鍊�"; + barBtnShowMonitorValue.Id = 57; + barBtnShowMonitorValue.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnShowMonitorValue.ImageOptions.SvgImage"); + barBtnShowMonitorValue.Name = "barBtnShowMonitorValue"; + barBtnShowMonitorValue.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; + barBtnShowMonitorValue.ItemClick += barBtnShowMonitorValue_ItemClick; // // barCkMonitor // @@ -214,14 +203,14 @@ barBtnWorkingLossCurve.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barBtnWorkingLossCurve.ItemClick += barBtnWorkingLossCurve_ItemClick; // - // barBtnWorkingLossScale + // barBtnWorkingLossStatistics // - barBtnWorkingLossScale.Caption = "鎹熷け姣斾緥"; - barBtnWorkingLossScale.Id = 70; - barBtnWorkingLossScale.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingLossScale.ImageOptions.SvgImage"); - barBtnWorkingLossScale.Name = "barBtnWorkingLossScale"; - barBtnWorkingLossScale.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; - barBtnWorkingLossScale.ItemClick += barBtnWorkingLossScale_ItemClick; + barBtnWorkingLossStatistics.Caption = "鎹熷け姣斾緥"; + barBtnWorkingLossStatistics.Id = 70; + barBtnWorkingLossStatistics.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnWorkingLossScale.ImageOptions.SvgImage"); + barBtnWorkingLossStatistics.Name = "barBtnWorkingLossStatistics"; + barBtnWorkingLossStatistics.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; + barBtnWorkingLossStatistics.ItemClick += barBtnWorkingLossStatistics_ItemClick; // // barBtnWorkingPower // @@ -241,14 +230,6 @@ barBtnWorkingAnaly.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.Large; barBtnWorkingAnaly.ItemClick += barBtnWorkingAnaly_ItemClick; // - // barBtnPumpParallel - // - barBtnPumpParallel.Caption = "骞惰仈妯℃嫙"; - barBtnPumpParallel.Id = 73; - barBtnPumpParallel.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnParallel.ImageOptions.SvgImage"); - barBtnPumpParallel.Name = "barBtnPumpParallel"; - barBtnPumpParallel.ItemClick += barBtnParallel_ItemClick; - // // barBtnWorkingEvaluation // barBtnWorkingEvaluation.Caption = "绮惧害璇勪及"; @@ -264,7 +245,6 @@ barBtnSetVisualVisible.Id = 77; barBtnSetVisualVisible.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barBtnSetVisualVisible.ImageOptions.SvgImage"); barBtnSetVisualVisible.Name = "barBtnSetVisualVisible"; - barBtnSetVisualVisible.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barBtnSetVisualVisible.ItemClick += barBtnSetVisualVisible_ItemClick; // // barCkDecorator @@ -275,12 +255,11 @@ barCkDecorator.Id = 78; barCkDecorator.ImageOptions.SvgImage = (DevExpress.Utils.Svg.SvgImage)resources.GetObject("barCkDecorator.ImageOptions.SvgImage"); barCkDecorator.Name = "barCkDecorator"; - barCkDecorator.RibbonStyle = DevExpress.XtraBars.Ribbon.RibbonItemStyles.SmallWithText; barCkDecorator.CheckedChanged += barCkDecorator_CheckedChanged; // // ribbonPage1 // - ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] { pageGroupModel, ribbonPageGroup6, ribbonPageGroup1, ribbonPageGroup7, ribbonPageGroup5, ribbonPageGroup9 }); + ribbonPage1.Groups.AddRange(new DevExpress.XtraBars.Ribbon.RibbonPageGroup[] { pageGroupModel, ribbonPageGroup6, ribbonPageGroup1, ribbonPageGroup7, ribbonPageGroup9, ribbonPageGroup2 }); ribbonPage1.Name = "ribbonPage1"; ribbonPage1.Text = "ribbonPage1"; // @@ -304,7 +283,6 @@ // // ribbonPageGroup1 // - ribbonPageGroup1.ItemLinks.Add(barBtnSetGradingList); ribbonPageGroup1.ItemLinks.Add(barBtnApplyGradingList); ribbonPageGroup1.ItemLinks.Add(barCkGrading); ribbonPageGroup1.Name = "ribbonPageGroup1"; @@ -312,28 +290,27 @@ // // ribbonPageGroup7 // - ribbonPageGroup7.ItemLinks.Add(barBtnSetMonitorValue); + ribbonPageGroup7.ItemLinks.Add(barBtnShowMonitorValue); ribbonPageGroup7.ItemLinks.Add(barCkMonitor); ribbonPageGroup7.Name = "ribbonPageGroup7"; ribbonPageGroup7.Text = "鐩戞祴"; // - // ribbonPageGroup5 - // - ribbonPageGroup5.ItemLinks.Add(barBtnPumpParallel); - ribbonPageGroup5.Name = "ribbonPageGroup5"; - ribbonPageGroup5.Text = "姘存车"; - // // ribbonPageGroup9 // - ribbonPageGroup9.ItemLinks.Add(barBtnExportInp); ribbonPageGroup9.ItemLinks.Add(barBtnWorkingParallel); ribbonPageGroup9.ItemLinks.Add(barBtnWorkingEvaluation); ribbonPageGroup9.ItemLinks.Add(barBtnWorkingPower); ribbonPageGroup9.ItemLinks.Add(barBtnWorkingLossCurve); - ribbonPageGroup9.ItemLinks.Add(barBtnWorkingLossScale); + ribbonPageGroup9.ItemLinks.Add(barBtnWorkingLossStatistics); ribbonPageGroup9.ItemLinks.Add(barBtnWorkingAnaly); ribbonPageGroup9.Name = "ribbonPageGroup9"; ribbonPageGroup9.Text = "鍒嗘瀽"; + // + // ribbonPageGroup2 + // + ribbonPageGroup2.ItemLinks.Add(barBtnExportInp); + ribbonPageGroup2.Name = "ribbonPageGroup2"; + ribbonPageGroup2.Text = "鏇村"; // // ribbonPageGroup4 // @@ -452,13 +429,12 @@ private DevExpress.XtraBars.Ribbon.RibbonPageGroup pageGroupModel; private DevExpress.XtraBars.Docking.DockPanel docPnlBottom; private DevExpress.XtraBars.Docking.ControlContainer controlContainerBottom; - private DevExpress.XtraBars.BarButtonItem barBtnSetGradingList; private DevExpress.XtraBars.BarButtonItem barBtnApplyGradingList; private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup1; private DevExpress.XtraBars.BarButtonItem barBtnSetMark; private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup6; private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup7; - private DevExpress.XtraBars.BarButtonItem barBtnSetMonitorValue; + private DevExpress.XtraBars.BarButtonItem barBtnShowMonitorValue; private DevExpress.XtraBars.BarCheckItem barCkMonitor; private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup9; private DevExpress.XtraBars.BarCheckItem barCkMark; @@ -466,13 +442,12 @@ private DevExpress.XtraBars.BarCheckItem barCkGrading; private DevExpress.XtraBars.BarCheckItem barCkCalcu; private DevExpress.XtraBars.BarButtonItem barBtnWorkingLossCurve; - private DevExpress.XtraBars.BarButtonItem barBtnWorkingLossScale; + private DevExpress.XtraBars.BarButtonItem barBtnWorkingLossStatistics; private DevExpress.XtraBars.BarButtonItem barBtnWorkingPower; private DevExpress.XtraBars.BarButtonItem barBtnWorkingAnaly; - private DevExpress.XtraBars.BarButtonItem barBtnPumpParallel; private DevExpress.XtraBars.BarButtonItem barBtnWorkingEvaluation; private DevExpress.XtraBars.BarButtonItem barBtnSetVisualVisible; private DevExpress.XtraBars.BarCheckItem barCkDecorator; - private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup5; + private DevExpress.XtraBars.Ribbon.RibbonPageGroup ribbonPageGroup2; } } diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.cs index 4c6e647..77e20f8 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.cs @@ -94,17 +94,18 @@ _bimfaceCtrl = new XhsProjectSimulationBimfaceCtrl(); _bimfaceCtrl.Dock = DockStyle.Fill; await _bimfaceCtrl.InitialData(_project, _projectSite); - _bimfaceCtrl.LoadCompletedEvent += () => + _bimfaceCtrl.LoadCompletedEvent += async () => {//view鍔犺浇瀹屾垚浜嬩欢 if (_hydroInfo == null) { return; } + await InitialWorking(); this.barCkDecorator.Checked = false; this.barCkMonitor.Checked = true; this.barCkGrading.Checked = true; this.barCkCalcu.Checked = true; - CalcuWorking(); + }; _bimfaceCtrl.HydroMouseLeftClickEvent += (code) => {//榧犳爣宸﹂敭鐐瑰嚮浜嬩欢 @@ -776,36 +777,6 @@ return _gradingHelper; } - //璁剧疆棰滆壊鍒嗙骇鍒楄〃 - private async void SetGradingList() - { - if (_hydroInfo == null) - { - return; - } - var gradingHelper = await GetGradingHelper(); - var allGradingList = await gradingHelper.GetGradingList(); - var dlg = new SetHydroGradingTreeDlg(); - dlg.SetBindingData(_hydroInfo, allGradingList); - dlg.ReloadDataEvent += (list) => - { - gradingHelper.SetGradingList(list); - gradingHelper.Set(); - }; - dlg.ApplyDataEvent += (catalog, propName) => - { - gradingHelper.UpdateApply(catalog, propName); - gradingHelper.Set(); - }; - dlg.ShowDialog(); - } - - //閰嶇疆棰滆壊鍒嗙骇 - private void barBtnSetGradingList_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - SetGradingList(); - } - //搴旂敤棰滆壊鍒嗙骇鍒楄〃 private async void ApplyGradingList() { @@ -930,42 +901,6 @@ return _monitorHelper; } - //璁剧疆鐩戞祴鐐瑰垪琛� - private async void SetMonitorList(HydroVisualInfo visual) - { - if (_hydroInfo == null) - { - return; - } - var monitorHelper = GetMonitorHelper(); - var allMonitorList = await monitorHelper.Get(); - var dlg = new SetHydroMonitorListDlg(); - dlg.SetBindingData(_hydroInfo, visual, allMonitorList); - dlg.ReloadDataEvent += async (list) => - { - var bol = await BLLFactory<Yw.BLL.HydroMonitor>.Instance.Save(_hydroInfo.ID, visual.Code, list); - if (!bol) - { - TipFormHelper.ShowError("璁剧疆澶辫触锛�"); - return; - } - TipFormHelper.ShowSucceed("璁剧疆鎴愬姛锛�"); - var monitorList = await monitorHelper.Update(visual.Code); - var monitorValueHelper = GetMonitorValueHelper(); - monitorValueHelper.Update(visual.Code, monitorList); - var monitorMarkerHelper = await GetMonitorMarkerHelper(); - monitorMarkerHelper.Update(visual.Code, monitorList); - monitorMarkerHelper.Set(); - }; - dlg.ShowDialog(); - } - - //璁剧疆鐩戞祴鐐� - private void barBtnSetMonitor_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - SetMonitorList(_visual); - } - #endregion #region 鐩戞祴鍊� @@ -999,6 +934,7 @@ { _monitorValueListCtrl = new HydroMonitorValueListCtrl(); _monitorValueListCtrl.Dock = DockStyle.Fill; + _monitorValueListCtrl.SetViewBoard(); _monitorValueListCtrl.HydroViewEvent += (code) => { var visualListHelper = GetVisualListHelper(); @@ -1045,8 +981,8 @@ monitorValueListCtrl.SetBindingData(allMonitorValueList); } - //璁剧疆鐩戞祴鍊� - private void barBtnSetMonitorValue_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + //鏄剧ず鐩戞祴鍊� + private void barBtnShowMonitorValue_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { ShowMonitorValueListCtrl(); } @@ -1340,59 +1276,6 @@ #endregion - #region 宸ュ喌璁$畻 - - //璁$畻宸ュ喌 - private async void CalcuWorking() - { - if (_hydroInfo == null) - { - return; - } - if (_working == null) - { - return; - } - _hydroInfo.UpdateWorkingInfo(_working.WorkingInfo); - - var workingHelper = GetWorkingHelper(); - //鏍¢獙 - var checkResult = _hydroInfo.Check(); - if (!checkResult.Succeed) - { - workingHelper.InitialData(_hydroInfo, _working, checkResult, null); - ShowCheckCtrl(checkResult); - TipFormHelper.ShowError("鏍¢獙澶辫触锛岃妫�鏌ュ悗閲嶈瘯"); - return; - } - //璁$畻 - var calcuResult = _hydroInfo.Calcu(Yw.EPAnet.CalcuMode.MinorLoss); - workingHelper.InitialData(_hydroInfo, _working, checkResult, calcuResult); - if (calcuResult.Succeed) - { - if (calcuResult.WainingList != null && calcuResult.WainingList.Count > 0) - { - ShowCalcuWarningCtrl(calcuResult); - } - TipFormHelper.ShowSucceed("璁$畻鎴愬姛锛�"); - } - else - { - ShowCalcuFailedCtrl(calcuResult); - TipFormHelper.ShowError("璁$畻澶辫触锛�"); - } - - #region 璁$畻鏍囩 - - var calcuResultLabelHelper = await GetCalcuResultLabelHelper(); - calcuResultLabelHelper.Set(); - - #endregion - } - - - #endregion - #region 绠$綉淇 //淇绠$綉 @@ -1598,6 +1481,50 @@ return workingHelper.CalcuResult; } + //鍒濆鍖栧伐鍐� + private async Task InitialWorking() + { + if (_hydroInfo == null) + { + return; + } + if (_working == null) + { + return; + } + _hydroInfo.UpdateWorkingInfo(_working.WorkingInfo); + var monitorValueHelper = GetMonitorValueHelper(); + var allMonitorValueList = await monitorValueHelper.Get(); + allMonitorValueList.UpdateMonitorValue(_working.MonitorInfo); + + var workingHelper = GetWorkingHelper(); + //鏍¢獙 + var checkResult = _hydroInfo.Check(); + if (!checkResult.Succeed) + { + workingHelper.InitialData(_hydroInfo, _working, checkResult, null); + ShowCheckCtrl(checkResult); + TipFormHelper.ShowError("鏍¢獙澶辫触锛�"); + return; + } + //璁$畻 + var calcuResult = _hydroInfo.Calcu(Yw.EPAnet.CalcuMode.MinorLoss); + workingHelper.InitialData(_hydroInfo, _working, checkResult, calcuResult); + if (calcuResult.Succeed) + { + if (calcuResult.WainingList != null && calcuResult.WainingList.Count > 0) + { + ShowCalcuWarningCtrl(calcuResult); + } + } + else + { + ShowCalcuFailedCtrl(calcuResult); + TipFormHelper.ShowError("璁$畻澶辫触锛�"); + } + + } + #endregion #region 宸ュ喌鍒嗘瀽 @@ -1709,59 +1636,60 @@ #endregion - #region 宸ュ喌鑳芥晥 - + //鑳芥晥鍒嗘瀽 private void barBtnWorkingPower_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - XtraMessageBox.Show("姝e湪寮�鍙戜腑锛屾暚璇锋湡寰咃紒"); - } - - #endregion - - #region 鎹熷け鏇茬嚎 - - private void barBtnWorkingLossCurve_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) - { - if (_visual == null) - { - XtraMessageBox.Show("璇烽�夋嫨鑺傜偣鍚庨噸璇曪紒"); - return; - } - if (!(_visual is Yw.Model.HydroNodeInfo)) - { - XtraMessageBox.Show("璇烽�夋嫨鑺傜偣鍚庨噸璇曪紒"); - return; - } - var network = _hydroInfo.ToNetwork(); - var calcuResult = network.Calcu(Yw.EPAnet.CalcuMode.MinorLoss); - 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); + var workingHelper = GetWorkingHelper(); + var dlg = new SimulationSingleWorkingEnergyDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, workingHelper.CalcuResult); dlg.ShowDialog(); } - #endregion - - #region 鎹熷け姣斾緥 - - private void barBtnWorkingLossScale_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + //鎹熷け鏇茬嚎 + private void barBtnWorkingLossCurve_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { - XtraMessageBox.Show("姝e湪寮�鍙戜腑锛屾暚璇锋湡寰咃紒"); + var workingHelper = GetWorkingHelper(); + if (!workingHelper.Initialized) + { + TipFormHelper.ShowError("宸ュ喌璁$畻澶辫触锛�"); + return; + } + if (_visual == null) + { + TipFormHelper.ShowWarn("璇烽�夋嫨鏋勪欢锛�"); + return; + } + HydroVisualInfo visual = _visual; + if (_visual is HydroLinkInfo linkInfo) + { + var visualListHelper = GetVisualListHelper(); + visual = visualListHelper.GetVisual(linkInfo.StartCode); + } + + var dlg = new HydroSingleLossCurveDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, workingHelper.CalcuResult, visual); + dlg.ShowDialog(); } - #endregion + //鎹熷け缁熻 + private void barBtnWorkingLossStatistics_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + var workingHelper = GetWorkingHelper(); + if (!workingHelper.Initialized) + { + TipFormHelper.ShowError("宸ュ喌璁$畻澶辫触锛�"); + return; + } + var dlg = new HydroSingleWorkingLossStatisticsDlg(); + dlg.SetBindingData(workingHelper.HydroInfo, workingHelper.CalcuResult); + dlg.ShowDialog(); + } - #region 缁煎悎鍒嗘瀽 + //缁煎悎鍒嗘瀽 private void barBtnWorkingAnaly_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { XtraMessageBox.Show("姝e湪寮�鍙戜腑锛屾暚璇锋湡寰咃紒"); } - - #endregion #endregion diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.resx b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.resx index 9221c3c..3949aaa 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.resx +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/08-working/XhsProjectSimulationWorkingPage.resx @@ -168,25 +168,6 @@ MjJ6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== </value> </data> - <data name="barBtnWorkingParallel.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAMYCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iQ3JlYXRlX0Z1bGxfU3RhY2tlZF9MaW5lX0NoYXJ0X05vX01hcmtlcnMi - IHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRl - eHQvY3NzIj4KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuUmVk - e2ZpbGw6I0QxMUMxQzt9Cjwvc3R5bGU+DQogIDxyZWN0IHg9IjIiIHk9IjQiIHdpZHRoPSIyNiIgaGVp - Z2h0PSIyIiBjbGFzcz0iUmVkIiAvPg0KICA8cG9seWdvbiBwb2ludHM9IjEuNywxMy45IDEuNywxMy45 - IDIuMywxMiAxNCwxNS45IDI3LjcsMTIgMjguMywxMy45IDE0LDE4IDEuNywxMy45ICIgY2xhc3M9Illl - bGxvdyIgLz4NCiAgPHBhdGggZD0iTTIuNCwyOS45TDIuNCwyOS45TDIuNCwyOS45TDIuNCwyOS45TDIu - NCwyOS45eiBNMS42LDI4LjFMMTMuOSwyMmwxNC40LDQuMUwyNy43LDI4bC0xMy42LTMuOUwyLjQsMjku - OSAgTDEuNiwyOC4xTDEuNiwyOC4xeiIgY2xhc3M9IkJsdWUiIC8+DQo8L3N2Zz4L -</value> - </data> <data name="barBtnSearch.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 @@ -211,35 +192,6 @@ ICAgYzAuOS0zLDMuNy01LDctNXM2LjEsMiw3LDVDMjkuMSwyNiwyNi4zLDI4LDIzLDI4eiBNMjMsMjZj LTEuNywwLTMtMS4zLTMtM3MxLjMtMywzLTNzMywxLjMsMywzUzI0LjcsMjYsMjMsMjZ6IiBjbGFzcz0i QmxhY2siIC8+DQogIDwvZz4NCjwvc3ZnPgs= -</value> - </data> - <data name="barBtnSetGradingList.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAAsFAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iTGF5ZXJfMSIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAg - MzIgMzIiPg0KICA8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLlllbGxvd3tmaWxsOiNGRkIxMTU7fQoJ - LlJlZHtmaWxsOiNEMTFDMUM7fQoJLkJsYWNre2ZpbGw6IzcyNzI3Mjt9CgkuQmx1ZXtmaWxsOiMxMTc3 - RDc7fQoJLldoaXRle2ZpbGw6I0ZGRkZGRjt9CgkuR3JlZW57ZmlsbDojMDM5QzIzO30KCS5zdDB7b3Bh - Y2l0eTowLjc1O30KCS5zdDF7b3BhY2l0eTowLjU7fQoJLnN0MntvcGFjaXR5OjAuMjU7fQoJLnN0M3tm - aWxsOiNGRkIxMTU7fQo8L3N0eWxlPg0KICA8ZyBpZD0iRWRpdENvbG9ycyI+DQogICAgPHBhdGggZD0i - TTI5LDBIMUMwLjUsMCwwLDAuNSwwLDF2MjhjMCwwLjUsMC41LDEsMSwxaDI4YzAuNSwwLDEtMC41LDEt - MVYxQzMwLDAuNSwyOS41LDAsMjksMHogTTI4LDI4SDJWMmgyNlYyOHoiIGNsYXNzPSJCbGFjayIgLz4N - CiAgICA8cGF0aCBkPSJNMTAsMTBINFY0aDZWMTB6IE0xOCw0aC02djZoNlY0eiBNMTAsMTJINHY2aDZW - MTJ6IiBjbGFzcz0iWWVsbG93IiAvPg0KICAgIDxwYXRoIGQ9Ik0xMCwyNkg0di02aDZWMjZ6IE0xOCwx - MmgtNnY2aDZWMTJ6IiBjbGFzcz0iR3JlZW4iIC8+DQogICAgPHBhdGggZD0iTTI2LDEwaC02VjRoNlYx - MHogTTI2LDEyaC02djZoNlYxMnoiIGNsYXNzPSJSZWQiIC8+DQogICAgPHBhdGggZD0iTTI2LDI2aC02 - di02aDZWMjZ6IE0xOCwyMGgtNnY2aDZWMjB6IiBjbGFzcz0iQmx1ZSIgLz4NCiAgICA8ZyBjbGFzcz0i - c3QxIj4NCiAgICAgIDxyZWN0IHg9IjQiIHk9IjEyIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiBjbGFzcz0i - R3JlZW4iIC8+DQogICAgICA8cGF0aCBkPSJNMTgsMTBoLTZWNGg2VjEweiBNMjYsMjBoLTZ2Nmg2VjIw - eiIgY2xhc3M9IlJlZCIgLz4NCiAgICAgIDxwYXRoIGQ9Ik0yNiwxOGgtNnYtNmg2VjE4eiBNMTgsMTJo - LTZ2Nmg2VjEyeiIgY2xhc3M9IkJsdWUiIC8+DQogICAgPC9nPg0KICAgIDxnIGNsYXNzPSJzdDEiPg0K - ICAgICAgPHJlY3QgeD0iMjAiIHk9IjIwIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiBjbGFzcz0iQmx1ZSIg - Lz4NCiAgICA8L2c+DQogIDwvZz4NCjwvc3ZnPgs= </value> </data> <data name="barBtnApplyGradingList.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> @@ -283,7 +235,7 @@ LDE4eiIgY2xhc3M9IlllbGxvdyIgLz4NCiAgPC9nPg0KPC9zdmc+Cw== </value> </data> - <data name="barBtnSetMonitorValue.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <data name="barBtnShowMonitorValue.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl @@ -407,25 +359,6 @@ eiBNMzAsMjZIMlY2aDI4VjI2eiIgY2xhc3M9IkJsYWNrIiAvPg0KICAgIDxwb2x5bGluZSBwb2ludHM9 IjQsMjAgOCwxNiAxMCwxOCAxNiwxMiAxOCwxNCAyNCw4IDI4LDEyIDI4LDE1IDI0LDExIDE4LDE3IDE2 LDE1IDEwLDIxIDgsMTkgNCwyMyA0LDIwICAiIGNsYXNzPSJSZWQiIC8+DQogIDwvZz4NCjwvc3ZnPgs= -</value> - </data> - <data name="barBtnParallel.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> - <value> - AAEAAAD/////AQAAAAAAAAAMAgAAAFlEZXZFeHByZXNzLkRhdGEudjIzLjIsIFZlcnNpb249MjMuMi40 - LjAsIEN1bHR1cmU9bmV1dHJhbCwgUHVibGljS2V5VG9rZW49Yjg4ZDE3NTRkNzAwZTQ5YQUBAAAAHURl - dkV4cHJlc3MuVXRpbHMuU3ZnLlN2Z0ltYWdlAQAAAAREYXRhBwICAAAACQMAAAAPAwAAAMYCAAAC77u/ - PD94bWwgdmVyc2lvbj0nMS4wJyBlbmNvZGluZz0nVVRGLTgnPz4NCjxzdmcgeD0iMHB4IiB5PSIwcHgi - IHZpZXdCb3g9IjAgMCAzMiAzMiIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcv - MjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4bWw6c3Bh - Y2U9InByZXNlcnZlIiBpZD0iQ3JlYXRlX0Z1bGxfU3RhY2tlZF9MaW5lX0NoYXJ0X05vX01hcmtlcnMi - IHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDMyIDMyIj4NCiAgPHN0eWxlIHR5cGU9InRl - eHQvY3NzIj4KCS5CbHVle2ZpbGw6IzExNzdENzt9CgkuWWVsbG93e2ZpbGw6I0ZGQjExNTt9CgkuUmVk - e2ZpbGw6I0QxMUMxQzt9Cjwvc3R5bGU+DQogIDxyZWN0IHg9IjIiIHk9IjQiIHdpZHRoPSIyNiIgaGVp - Z2h0PSIyIiBjbGFzcz0iUmVkIiAvPg0KICA8cG9seWdvbiBwb2ludHM9IjEuNywxMy45IDEuNywxMy45 - IDIuMywxMiAxNCwxNS45IDI3LjcsMTIgMjguMywxMy45IDE0LDE4IDEuNywxMy45ICIgY2xhc3M9Illl - bGxvdyIgLz4NCiAgPHBhdGggZD0iTTIuNCwyOS45TDIuNCwyOS45TDIuNCwyOS45TDIuNCwyOS45TDIu - NCwyOS45eiBNMS42LDI4LjFMMTMuOSwyMmwxNC40LDQuMUwyNy43LDI4bC0xMy42LTMuOUwyLjQsMjku - OSAgTDEuNiwyOC4xTDEuNiwyOC4xeiIgY2xhc3M9IkJsdWUiIC8+DQo8L3N2Zz4L </value> </data> <data name="barBtnWorkingEvaluation.ImageOptions.SvgImage" type="DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/HStation.WinFrmUI.Xhs.Core.csproj b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/HStation.WinFrmUI.Xhs.Core.csproj index 2aeb399..645ac99 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/HStation.WinFrmUI.Xhs.Core.csproj +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/HStation.WinFrmUI.Xhs.Core.csproj @@ -102,6 +102,7 @@ <Content Include="map\gaode\js\xhs_base64.js"> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> </Content> + <None Include="Resources\pump_run_32.png" /> <None Include="Resources\Cancel.svg" /> <None Include="Resources\Close32.png" /> <None Include="Resources\Folder.svg" /> diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.Designer.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.Designer.cs index 7553532..1d17410 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.Designer.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.Designer.cs @@ -111,6 +111,16 @@ } /// <summary> + /// 鏌ユ壘 System.Drawing.Bitmap 绫诲瀷鐨勬湰鍦板寲璧勬簮銆� + /// </summary> + internal static System.Drawing.Bitmap pump_run_32 { + get { + object obj = ResourceManager.GetObject("pump_run_32", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// <summary> /// 鏌ユ壘 DevExpress.Utils.Svg.SvgImage 绫诲瀷鐨勬湰鍦板寲璧勬簮銆� /// </summary> internal static DevExpress.Utils.Svg.SvgImage Remove { diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.resx b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.resx index 385eb81..a3132ae 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.resx +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Properties/Resources.resx @@ -145,4 +145,7 @@ <data name="IncomingCall" type="System.Resources.ResXFileRef, System.Windows.Forms"> <value>..\Resources\IncomingCall.svg;DevExpress.Utils.Svg.SvgImage, DevExpress.Data.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a</value> </data> + <data name="pump_run_32" type="System.Resources.ResXFileRef, System.Windows.Forms"> + <value>..\Resources\pump_run_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value> + </data> </root> \ No newline at end of file diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Resources/pump_run_32.png b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Resources/pump_run_32.png new file mode 100644 index 0000000..cec7ed9 --- /dev/null +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/Resources/pump_run_32.png Binary files differ diff --git a/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.Designer.cs index 2a4dcf5..5ec72a8 100644 --- a/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.Designer.cs +++ b/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.Designer.cs @@ -28,63 +28,62 @@ /// </summary> private void InitializeComponent() { - this.components = new System.ComponentModel.Container(); - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(TipForm)); - this.labText = new DevExpress.XtraEditors.LabelControl(); - this.img32 = new DevExpress.Utils.ImageCollection(this.components); - this.timer1 = new System.Windows.Forms.Timer(this.components); - ((System.ComponentModel.ISupportInitialize)(this.img32)).BeginInit(); - this.SuspendLayout(); + components = new Container(); + ComponentResourceManager resources = new ComponentResourceManager(typeof(TipForm)); + labText = new LabelControl(); + img32 = new ImageCollection(components); + timer1 = new System.Windows.Forms.Timer(components); + ((ISupportInitialize)img32).BeginInit(); + SuspendLayout(); // // labText // - this.labText.AllowHtmlString = true; - this.labText.Appearance.BackColor = System.Drawing.Color.White; - this.labText.Appearance.FontSizeDelta = 1; - this.labText.Appearance.Options.UseBackColor = true; - this.labText.Appearance.Options.UseFont = true; - this.labText.Appearance.Options.UseTextOptions = true; - this.labText.Appearance.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Center; - this.labText.Appearance.TextOptions.VAlignment = DevExpress.Utils.VertAlignment.Center; - this.labText.AutoSizeMode = DevExpress.XtraEditors.LabelAutoSizeMode.None; - this.labText.Dock = System.Windows.Forms.DockStyle.Fill; - this.labText.ImageAlignToText = DevExpress.XtraEditors.ImageAlignToText.LeftCenter; - this.labText.ImageOptions.ImageIndex = 0; - this.labText.ImageOptions.Images = this.img32; - this.labText.ImageOptions.SvgImageSize = new System.Drawing.Size(24, 24); - this.labText.Location = new System.Drawing.Point(1, 1); - this.labText.Name = "labText"; - this.labText.Size = new System.Drawing.Size(298, 78); - this.labText.TabIndex = 0; + labText.AllowHtmlString = true; + labText.Appearance.BackColor = Color.White; + labText.Appearance.FontSizeDelta = 1; + labText.Appearance.Options.UseBackColor = true; + labText.Appearance.Options.UseFont = true; + labText.Appearance.Options.UseTextOptions = true; + labText.Appearance.TextOptions.HAlignment = HorzAlignment.Center; + labText.Appearance.TextOptions.VAlignment = VertAlignment.Center; + labText.AutoSizeMode = LabelAutoSizeMode.None; + labText.Dock = DockStyle.Fill; + labText.ImageAlignToText = ImageAlignToText.LeftCenter; + labText.ImageOptions.ImageIndex = 0; + labText.ImageOptions.Images = img32; + labText.ImageOptions.SvgImageSize = new Size(24, 24); + labText.Location = new Point(1, 1); + labText.Name = "labText"; + labText.Size = new Size(298, 78); + labText.TabIndex = 0; // // img32 // - this.img32.ImageSize = new System.Drawing.Size(32, 32); - this.img32.ImageStream = ((DevExpress.Utils.ImageCollectionStreamer)(resources.GetObject("img32.ImageStream"))); - this.img32.Images.SetKeyName(0, "info32.png"); - this.img32.Images.SetKeyName(1, "success32.png"); - this.img32.Images.SetKeyName(2, "error32.png"); - this.img32.Images.SetKeyName(3, "warning32.png"); + img32.ImageSize = new Size(32, 32); + img32.ImageStream = (ImageCollectionStreamer)resources.GetObject("img32.ImageStream"); + img32.Images.SetKeyName(0, "info32.png"); + img32.Images.SetKeyName(1, "success32.png"); + img32.Images.SetKeyName(2, "warning32.png"); + img32.Images.SetKeyName(3, "error32.png"); // // timer1 // - this.timer1.Interval = 2000; - this.timer1.Tick += new System.EventHandler(this.timer_Tick); + timer1.Interval = 2000; + timer1.Tick += timer_Tick; // - // NormalTipFrm + // TipForm // - this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 14F); - this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(300, 80); - this.Controls.Add(this.labText); - this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; - this.Name = "NormalTipFrm"; - this.Padding = new System.Windows.Forms.Padding(1); - this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen; - this.TopMost = true; - ((System.ComponentModel.ISupportInitialize)(this.img32)).EndInit(); - this.ResumeLayout(false); - + AutoScaleDimensions = new SizeF(7F, 14F); + AutoScaleMode = AutoScaleMode.Font; + ClientSize = new Size(300, 80); + Controls.Add(labText); + FormBorderStyle = FormBorderStyle.None; + Name = "TipForm"; + Padding = new Padding(1); + StartPosition = FormStartPosition.CenterScreen; + TopMost = true; + ((ISupportInitialize)img32).EndInit(); + ResumeLayout(false); } #endregion diff --git a/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.resx b/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.resx index 0739b53..c4353b7 100644 --- a/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.resx +++ b/WinFrmUI/Yw.WinFrmUI.Core/01-tip/TipForm.resx @@ -1,17 +1,17 @@ 锘�<?xml version="1.0" encoding="utf-8"?> <root> - <!-- + <!-- Microsoft ResX Schema - + Version 2.0 - - The primary goals of this format is to allow a simple XML format - that is mostly human readable. The generation and parsing of the - various data types are done through the TypeConverter classes + + The primary goals of this format is to allow a simple XML format + that is mostly human readable. The generation and parsing of the + various data types are done through the TypeConverter classes associated with the data types. - + Example: - + ... ado.net/XML headers & schema ... <resheader name="resmimetype">text/microsoft-resx</resheader> <resheader name="version">2.0</resheader> @@ -26,36 +26,36 @@ <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> <comment>This is a comment</comment> </data> - - There are any number of "resheader" rows that contain simple + + There are any number of "resheader" rows that contain simple name/value pairs. - - Each data row contains a name, and value. The row also contains a - type or mimetype. Type corresponds to a .NET class that support - text/value conversion through the TypeConverter architecture. - Classes that don't support this are serialized and stored with the + + Each data row contains a name, and value. The row also contains a + type or mimetype. Type corresponds to a .NET class that support + text/value conversion through the TypeConverter architecture. + Classes that don't support this are serialized and stored with the mimetype set. - - The mimetype is used for serialized objects, and tells the - ResXResourceReader how to depersist the object. This is currently not + + The mimetype is used for serialized objects, and tells the + ResXResourceReader how to depersist the object. This is currently not extensible. For a given mimetype the value must be set accordingly: - - Note - application/x-microsoft.net.object.binary.base64 is the format - that the ResXResourceWriter will generate, however the reader can + + Note - application/x-microsoft.net.object.binary.base64 is the format + that the ResXResourceWriter will generate, however the reader can read any of the formats listed below. - + mimetype: application/x-microsoft.net.object.binary.base64 - value : The object must be serialized with + value : The object must be serialized with : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter : and then encoded with base64 encoding. mimetype: application/x-microsoft.net.object.soap.base64 - value : The object must be serialized with + value : The object must be serialized with : System.Runtime.Serialization.Formatters.Soap.SoapFormatter : and then encoded with base64 encoding. mimetype: application/x-microsoft.net.object.bytearray.base64 - value : The object must be serialized into a byte array + value : The object must be serialized into a byte array : using a System.ComponentModel.TypeConverter : and then encoded with base64 encoding. --> @@ -120,11 +120,11 @@ <metadata name="img32.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> <value>107, 17</value> </metadata> - <assembly alias="DevExpress.Utils.v23.2" name="DevExpress.Utils.v23.2, Version=23.2.4.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> + <assembly alias="DevExpress.Utils.v23.2" name="DevExpress.Utils.v23.2, Culture=neutral, PublicKeyToken=b88d1754d700e49a" /> <data name="img32.ImageStream" type="DevExpress.Utils.ImageCollectionStreamer, DevExpress.Utils.v23.2" mimetype="application/x-microsoft.net.object.bytearray.base64"> <value> - AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYyMS4yLCBWZXJzaW9uPTIxLjIu - Ni4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT + AAEAAAD/////AQAAAAAAAAAMAgAAAFpEZXZFeHByZXNzLlV0aWxzLnYyMy4yLCBWZXJzaW9uPTIzLjIu + NC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI4OGQxNzU0ZDcwMGU0OWEMAwAAAFFT eXN0ZW0uRHJhd2luZywgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRv a2VuPWIwM2Y1ZjdmMTFkNTBhM2EFAQAAAChEZXZFeHByZXNzLlV0aWxzLkltYWdlQ29sbGVjdGlvblN0 cmVhbWVyAgAAAAlJbWFnZVNpemUERGF0YQQHE1N5c3RlbS5EcmF3aW5nLlNpemUDAAAAAgIAAAAF/P// @@ -148,27 +148,27 @@ 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 </value> </data> <metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/05-extensions/HydroModelInfoExtensions.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/05-extensions/HydroModelInfoExtensions.cs index 9dc99eb..17630fb 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/05-extensions/HydroModelInfoExtensions.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/00-core/05-extensions/HydroModelInfoExtensions.cs @@ -1,8 +1,5 @@ -锘縰sing System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +锘縰sing Yw.EPAnet; +using Yw.Hydro; using Yw.Model; namespace Yw.WinFrmUI @@ -25,6 +22,195 @@ return allVisualList?.ToDictionary(x => x.Code); } + /// <summary> + /// 璁$畻 + /// </summary> + public static HydroCalcuResult Calcu(this Yw.Model.HydroModelInfo hydroInfo, string calcuMode = Yw.EPAnet.CalcuMode.Simple) + { + var network = hydroInfo.ToNetwork(); + if (network == null) + { + return default; + } + var calcuResult = network.Calcu(calcuMode); + if (calcuResult == null) + { + return default; + } + return hydroInfo.GetCalcuResult(calcuResult); + } + + /// <summary> + /// 鑾峰彇璁$畻缁撴灉 + /// </summary> + public static HydroCalcuResult GetCalcuResult(this Yw.Model.HydroModelInfo hydroInfo, Yw.EPAnet.CalcuResult calcuResult) + { + if (hydroInfo == null) + { + return default; + } + if (calcuResult == null) + { + return default; + } + + var hydroCalcuResult = new HydroCalcuResult(calcuResult); + + //娴侀噺璁� + var allFlowmeterList = hydroInfo.Flowmeters; + if (allFlowmeterList != null && allFlowmeterList.Count > 0) + { + var allLinkList = hydroInfo.GetAllLinks(); + foreach (var flowmeter in allFlowmeterList) + { + var calcuFlowmeterResult = hydroCalcuResult.NodeList?.Find(x => x.Code == flowmeter.Code); + if (calcuFlowmeterResult != null) + { + var calcuFlowmeterNewResult = new HydroCalcuFlowmeterResult(calcuFlowmeterResult); + var calcuFlowmeterLinkResultList = new List<HydroCalcuLinkResult>(); + var flowmeterLinkList = allLinkList?.Where(x => x.StartCode == flowmeter.Code || x.EndCode == flowmeter.Code).ToList(); + if (flowmeterLinkList != null && flowmeterLinkList.Count > 0) + { + foreach (var flowmeterLink in flowmeterLinkList) + { + var calcuFlowmeterLinkResult = hydroCalcuResult.LinkList?.Find(x => x.Code == flowmeterLink.Code); + if (calcuFlowmeterLinkResult != null) + { + calcuFlowmeterLinkResultList.Add(calcuFlowmeterLinkResult); + } + } + } + if (calcuFlowmeterLinkResultList.Exists(x => x.CalcuFlow.HasValue)) + { + calcuFlowmeterNewResult.CalcuQ = calcuFlowmeterLinkResultList.Where(x => x.CalcuFlow.HasValue).Average(x => x.CalcuFlow.Value); + } + hydroCalcuResult.NodeList.Remove(calcuFlowmeterResult); + hydroCalcuResult.NodeList.Add(calcuFlowmeterNewResult); + } + } + } + + //鍘嬪姏琛� + var allPressmeterList = hydroInfo.Pressmeters; + if (allPressmeterList != null && allPressmeterList.Count > 0) + { + foreach (var pressmeter in allPressmeterList) + { + var calcuPressmeterResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pressmeter.Code); + if (calcuPressmeterResult != null) + { + var calcuPressmeterNewResult = new HydroCalcuPressmeterResult(calcuPressmeterResult); + calcuPressmeterNewResult.CalcuPr = calcuPressmeterResult.CalcuPress; + hydroCalcuResult.NodeList.Remove(calcuPressmeterResult); + hydroCalcuResult.NodeList.Add(calcuPressmeterNewResult); + } + } + } + + //姘存车 + var allPumpList = hydroInfo.Pumps; + if (allPumpList != null && allPumpList.Count > 0) + { + foreach (var pump in allPumpList) + { + var calcuPumpResult = hydroCalcuResult.LinkList.Find(x => x.Code == pump.Code); + if (calcuPumpResult != null) + { + var calcuPumpNewResult = new HydroCalcuPumpResult(calcuPumpResult); + calcuPumpNewResult.CalcuQ = calcuPumpResult.CalcuFlow; + if (calcuPumpNewResult.CalcuQ.HasValue) + { + var calcuNodeStartResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pump.StartCode); + var calcuNodeEndResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pump.EndCode); + if (calcuNodeStartResult != null && calcuNodeEndResult != null) + { + if (calcuNodeStartResult.CalcuPress.HasValue && calcuNodeEndResult.CalcuPress.HasValue) + { + calcuPumpNewResult.CalcuH = Math.Abs(calcuNodeStartResult.CalcuPress.Value - calcuNodeEndResult.CalcuPress.Value); + } + if (pump.LinkStatus == Yw.Hydro.PumpStatus.Open && pump.RatedN.HasValue) + { + var curveqp = hydroInfo.Curves?.Find(x => x.Code == pump.CurveQP); + if (curveqp != null) + { + if (curveqp.CurveData != null && curveqp.CurveData.Count > 3) + { + var point2dList = curveqp.CurveData.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); + var point2dSimularList = point2dList.GetQPPointListByN(pump.RatedN.Value, pump.RatedN.Value * pump.SpeedRatio); + var pumpCurveQp = new Yw.Pump.CurveQP(eFeatType.Cubic, point2dSimularList); + calcuPumpNewResult.CalcuP = pumpCurveQp.FeatCurve.GetPointY(calcuPumpNewResult.CalcuQ.Value); + } + } + } + if (calcuPumpNewResult.CalcuH.HasValue && calcuPumpNewResult.CalcuP.HasValue) + { + calcuPumpNewResult.CalcuE = Yw.Pump.CalculationHelper.CalcuE(calcuPumpNewResult.CalcuQ.Value, calcuPumpNewResult.CalcuH.Value, calcuPumpNewResult.CalcuP.Value); + } + } + } + hydroCalcuResult.LinkList.Remove(calcuPumpResult); + hydroCalcuResult.LinkList.Add(calcuPumpNewResult); + + switch (pump.LinkStatus) + { + case Yw.Hydro.PumpStatus.Open: + { + if (calcuPumpNewResult.CalcuFlow.HasValue) + { + if (calcuPumpNewResult.CalcuFlow.Value <= 0) + { + hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() + { + Code = pump.Code, + Message = $"[{pump.Name}]涓嶆弧瓒冲綋鍓嶅伐鍐� " + }); + } + } + else + { + hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() + { + Code = pump.Code, + Message = $"[{pump.Name}]娴侀噺璁$畻澶辫触 " + }); + } + } + break; + case Yw.Hydro.PumpStatus.Closed: + { + if (calcuPumpNewResult.CalcuFlow.HasValue) + { + if (calcuPumpNewResult.CalcuFlow.Value > 0) + { + hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() + { + Code = pump.Code, + Message = $"[{pump.Name}]涓嶆弧瓒冲綋鍓嶅伐鍐� " + }); + } + } + else + { + hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() + { + Code = pump.Code, + Message = $"[{pump.Name}]娴侀噺璁$畻澶辫触 " + }); + } + } + break; + default: break; + } + + } + } + } + + + + return hydroCalcuResult; + } + } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResult.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResult.cs index 4089f38..81a3134 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResult.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResult.cs @@ -18,6 +18,19 @@ } /// <summary> + /// + /// </summary> + public HydroCalcuResult(Yw.EPAnet.CalcuResult calcuResult) + { + this.Succeed = calcuResult.Succeed; + this.FailedList = calcuResult.FailedList?.Select(x => new HydroCalcuFailed(x)).ToList(); + this.NodeList = calcuResult.NodeList?.Select(x => new HydroCalcuNodeResult(x)).ToList(); + this.LinkList = calcuResult.LinkList?.Select(x => new HydroCalcuLinkResult(x)).ToList(); + this.WainingList = new List<HydroCalcuWarning>(); + this.EPAnetCalcuResult = calcuResult; + } + + /// <summary> /// 鏄惁鎴愬姛 /// </summary> public bool Succeed { get; set; } @@ -43,6 +56,11 @@ public List<HydroCalcuWarning> WainingList { get; set; } /// <summary> + /// EPAnet 璁$畻缁撴灉 + /// </summary> + public Yw.EPAnet.CalcuResult EPAnetCalcuResult { get; set; } + + /// <summary> /// 鑾峰彇鍙鍒楄〃 /// </summary> public List<HydroCalcuVisualResult> GetVisualList() diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs deleted file mode 100644 index 27d7cfa..0000000 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/03-calcu/01-result/HydroCalcuResultHelper.cs +++ /dev/null @@ -1,210 +0,0 @@ -锘縰sing Yw.EPAnet; -using Yw.Hydro; - -namespace Yw.WinFrmUI -{ - /// <summary> - /// 璁$畻缁撴灉杈呭姪绫� - /// </summary> - public static class HydroCalcuResultHelper - { - /// <summary> - /// 璁$畻 - /// </summary> - public static HydroCalcuResult Calcu(this Yw.Model.HydroModelInfo hydroInfo, string calcuMode = Yw.EPAnet.CalcuMode.Simple) - { - var network = hydroInfo.ToNetwork(); - if (network == null) - { - return default; - } - var calcuResult = network.Calcu(calcuMode); - if (calcuResult == null) - { - return default; - } - return hydroInfo.GetCalcuResult(calcuResult); - } - - /// <summary> - /// 鑾峰彇璁$畻缁撴灉 - /// </summary> - public static HydroCalcuResult GetCalcuResult(this Yw.Model.HydroModelInfo hydroInfo, Yw.EPAnet.CalcuResult calcuResult) - { - if (hydroInfo == null) - { - return default; - } - if (calcuResult == null) - { - return default; - } - - var hydroCalcuResult = new HydroCalcuResult(); - hydroCalcuResult.Succeed = calcuResult.Succeed; - //澶辫触鍒楄〃 - hydroCalcuResult.FailedList = calcuResult.FailedList?.Select(x => new HydroCalcuFailed(x)).ToList(); - //鑺傜偣鍒楄〃 - hydroCalcuResult.NodeList = calcuResult.NodeList?.Select(x => new HydroCalcuNodeResult(x)).ToList(); - //绠℃鍒楄〃 - hydroCalcuResult.LinkList = calcuResult.LinkList?.Select(x => new HydroCalcuLinkResult(x)).ToList(); - - //娴侀噺璁� - var allFlowmeterList = hydroInfo.Flowmeters; - if (allFlowmeterList != null && allFlowmeterList.Count > 0) - { - var allLinkList = hydroInfo.GetAllLinks(); - foreach (var flowmeter in allFlowmeterList) - { - var calcuFlowmeterResult = hydroCalcuResult.NodeList?.Find(x => x.Code == flowmeter.Code); - if (calcuFlowmeterResult != null) - { - var calcuFlowmeterNewResult = new HydroCalcuFlowmeterResult(calcuFlowmeterResult); - var calcuFlowmeterLinkResultList = new List<HydroCalcuLinkResult>(); - var flowmeterLinkList = allLinkList?.Where(x => x.StartCode == flowmeter.Code || x.EndCode == flowmeter.Code).ToList(); - if (flowmeterLinkList != null && flowmeterLinkList.Count > 0) - { - foreach (var flowmeterLink in flowmeterLinkList) - { - var calcuFlowmeterLinkResult = hydroCalcuResult.LinkList?.Find(x => x.Code == flowmeterLink.Code); - if (calcuFlowmeterLinkResult != null) - { - calcuFlowmeterLinkResultList.Add(calcuFlowmeterLinkResult); - } - } - } - if (calcuFlowmeterLinkResultList.Exists(x => x.CalcuFlow.HasValue)) - { - calcuFlowmeterNewResult.CalcuQ = calcuFlowmeterLinkResultList.Where(x => x.CalcuFlow.HasValue).Average(x => x.CalcuFlow.Value); - } - hydroCalcuResult.NodeList.Remove(calcuFlowmeterResult); - hydroCalcuResult.NodeList.Add(calcuFlowmeterNewResult); - } - } - } - - //鍘嬪姏琛� - var allPressmeterList = hydroInfo.Pressmeters; - if (allPressmeterList != null && allPressmeterList.Count > 0) - { - foreach (var pressmeter in allPressmeterList) - { - var calcuPressmeterResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pressmeter.Code); - if (calcuPressmeterResult != null) - { - var calcuPressmeterNewResult = new HydroCalcuPressmeterResult(calcuPressmeterResult); - calcuPressmeterNewResult.CalcuPr = calcuPressmeterResult.CalcuPress; - hydroCalcuResult.NodeList.Remove(calcuPressmeterResult); - hydroCalcuResult.NodeList.Add(calcuPressmeterNewResult); - } - } - } - - //姘存车 - var allPumpList = hydroInfo.Pumps; - if (allPumpList != null && allPumpList.Count > 0) - { - foreach (var pump in allPumpList) - { - var calcuPumpResult = hydroCalcuResult.LinkList.Find(x => x.Code == pump.Code); - if (calcuPumpResult != null) - { - var calcuPumpNewResult = new HydroCalcuPumpResult(calcuPumpResult); - calcuPumpNewResult.CalcuQ = calcuPumpResult.CalcuFlow; - if (calcuPumpNewResult.CalcuQ.HasValue) - { - var calcuNodeStartResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pump.StartCode); - var calcuNodeEndResult = hydroCalcuResult.NodeList?.Find(x => x.Code == pump.EndCode); - if (calcuNodeStartResult != null && calcuNodeEndResult != null) - { - if (calcuNodeStartResult.CalcuPress.HasValue && calcuNodeEndResult.CalcuPress.HasValue) - { - calcuPumpNewResult.CalcuH = Math.Abs(calcuNodeStartResult.CalcuPress.Value - calcuNodeEndResult.CalcuPress.Value); - } - if (pump.LinkStatus == Yw.Hydro.PumpStatus.Open && pump.RatedN.HasValue) - { - var curveqp = hydroInfo.Curves?.Find(x => x.Code == pump.CurveQP); - if (curveqp != null) - { - if (curveqp.CurveData != null && curveqp.CurveData.Count > 3) - { - var point2dList = curveqp.CurveData.Select(x => new Yw.Geometry.Point2d(x.X, x.Y)).ToList(); - var point2dSimularList = point2dList.GetQPPointListByN(pump.RatedN.Value, pump.RatedN.Value * pump.SpeedRatio); - var pumpCurveQp = new Yw.Pump.CurveQP(eFeatType.Cubic, point2dSimularList); - calcuPumpNewResult.CalcuP = pumpCurveQp.FeatCurve.GetPointY(calcuPumpNewResult.CalcuQ.Value); - } - } - } - if (calcuPumpNewResult.CalcuH.HasValue && calcuPumpNewResult.CalcuP.HasValue) - { - calcuPumpNewResult.CalcuE = Yw.Pump.CalculationHelper.CalcuE(calcuPumpNewResult.CalcuQ.Value, calcuPumpNewResult.CalcuH.Value, calcuPumpNewResult.CalcuP.Value); - } - } - } - hydroCalcuResult.LinkList.Remove(calcuPumpResult); - hydroCalcuResult.LinkList.Add(calcuPumpNewResult); - - switch (pump.LinkStatus) - { - case Yw.Hydro.PumpStatus.Open: - { - if (calcuPumpNewResult.CalcuFlow.HasValue) - { - if (calcuPumpNewResult.CalcuFlow.Value <= 0) - { - hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() - { - Code = pump.Code, - Message = $"[{pump.Name}]涓嶆弧瓒冲綋鍓嶅伐鍐� " - }); - } - } - else - { - hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() - { - Code = pump.Code, - Message = $"[{pump.Name}]娴侀噺璁$畻澶辫触 " - }); - } - } - break; - case Yw.Hydro.PumpStatus.Closed: - { - if (calcuPumpNewResult.CalcuFlow.HasValue) - { - if (calcuPumpNewResult.CalcuFlow.Value > 0) - { - hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() - { - Code = pump.Code, - Message = $"[{pump.Name}]涓嶆弧瓒冲綋鍓嶅伐鍐� " - }); - } - } - else - { - hydroCalcuResult.WainingList.Add(new HydroCalcuWarning() - { - Code = pump.Code, - Message = $"[{pump.Name}]娴侀噺璁$畻澶辫触 " - }); - } - } - break; - default: break; - } - - } - } - } - - - - return hydroCalcuResult; - } - - - } - -} diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorValueExtensions.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorValueExtensions.cs index 9a2f58f..d8c31eb 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorValueExtensions.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/00-core/HydroMonitorValueExtensions.cs @@ -1,12 +1,32 @@ -锘縰sing DevExpress.CodeParser; - -namespace Yw.WinFrmUI +锘縩amespace Yw.WinFrmUI { /// <summary> /// 鐩戞祴鍊兼嫇灞� /// </summary> public static class HydroMonitorValueExtensions { + + /// <summary> + /// 鏇存柊鐩戞祴鍊煎垪琛� + /// </summary> + public static void UpdateMonitorValue(this List<HydroMonitorValueViewModel> allMonitorValueList, string monitorInfo) + { + if (allMonitorValueList == null || allMonitorValueList.Count < 1) + { + return; + } + if (string.IsNullOrEmpty(monitorInfo)) + { + return; + } + var allWorkingMonitorList = JsonHelper.Json2Object<List<HydroWorkingMonitorViewModel>>(monitorInfo); + if (allWorkingMonitorList == null || allWorkingMonitorList.Count < 1) + { + return; + } + allMonitorValueList.UpdateMonitorValue(allWorkingMonitorList); + } + /// <summary> /// 鏇存柊鐩戞祴鍊煎垪琛� /// </summary> diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.Designer.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.Designer.cs index 302d824..2d768c1 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.Designer.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.Designer.cs @@ -31,16 +31,16 @@ components = new Container(); ComponentResourceManager resources = new ComponentResourceManager(typeof(HydroMonitorValueListCtrl)); gridControl1 = new DevExpress.XtraGrid.GridControl(); + hydroMonitorValueViewModelBindingSource = new BindingSource(components); gridView1 = new DevExpress.XtraGrid.Views.Grid.GridView(); - colRelation = new DevExpress.XtraGrid.Columns.GridColumn(); colPropName = new DevExpress.XtraGrid.Columns.GridColumn(); colMonitorValue = new DevExpress.XtraGrid.Columns.GridColumn(); colUnitName = new DevExpress.XtraGrid.Columns.GridColumn(); colDescription = new DevExpress.XtraGrid.Columns.GridColumn(); - hydroMonitorValueViewModelBindingSource = new BindingSource(components); + colVisualName = new DevExpress.XtraGrid.Columns.GridColumn(); ((ISupportInitialize)gridControl1).BeginInit(); - ((ISupportInitialize)gridView1).BeginInit(); ((ISupportInitialize)hydroMonitorValueViewModelBindingSource).BeginInit(); + ((ISupportInitialize)gridView1).BeginInit(); SuspendLayout(); // // gridControl1 @@ -54,22 +54,16 @@ gridControl1.TabIndex = 0; gridControl1.ViewCollection.AddRange(new DevExpress.XtraGrid.Views.Base.BaseView[] { gridView1 }); // + // hydroMonitorValueViewModelBindingSource + // + hydroMonitorValueViewModelBindingSource.DataSource = typeof(HydroMonitorValueViewModel); + // // gridView1 // - gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] { colRelation, colPropName, colMonitorValue, colUnitName, colDescription }); + gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] { colVisualName, colPropName, colMonitorValue, colUnitName, colDescription }); gridView1.GridControl = gridControl1; gridView1.Name = "gridView1"; gridView1.RowClick += gridView1_RowClick; - // - // colRelation - // - colRelation.FieldName = "Relation"; - colRelation.MaxWidth = 250; - colRelation.MinWidth = 150; - colRelation.Name = "colRelation"; - colRelation.Visible = true; - colRelation.VisibleIndex = 0; - colRelation.Width = 150; // // colPropName // @@ -77,6 +71,7 @@ colPropName.MaxWidth = 250; colPropName.MinWidth = 150; colPropName.Name = "colPropName"; + colPropName.OptionsColumn.AllowEdit = false; colPropName.Visible = true; colPropName.VisibleIndex = 1; colPropName.Width = 150; @@ -99,6 +94,7 @@ colUnitName.MaxWidth = 100; colUnitName.MinWidth = 100; colUnitName.Name = "colUnitName"; + colUnitName.OptionsColumn.AllowEdit = false; colUnitName.Visible = true; colUnitName.VisibleIndex = 3; colUnitName.Width = 100; @@ -108,24 +104,32 @@ colDescription.FieldName = "Description"; colDescription.MinWidth = 100; colDescription.Name = "colDescription"; + colDescription.OptionsColumn.AllowEdit = false; colDescription.Visible = true; colDescription.VisibleIndex = 4; colDescription.Width = 100; // - // hydroMonitorValueViewModelBindingSource + // colVisualName // - hydroMonitorValueViewModelBindingSource.DataSource = typeof(HydroMonitorValueViewModel); + colVisualName.FieldName = "VisualName"; + colVisualName.MaxWidth = 250; + colVisualName.MinWidth = 150; + colVisualName.Name = "colVisualName"; + colVisualName.OptionsColumn.AllowEdit = false; + colVisualName.Visible = true; + colVisualName.VisibleIndex = 0; + colVisualName.Width = 150; // - // HydroVisualMonitorValueListCtrl + // HydroMonitorValueListCtrl // AutoScaleDimensions = new SizeF(7F, 14F); AutoScaleMode = AutoScaleMode.Font; Controls.Add(gridControl1); - Name = "HydroVisualMonitorValueListCtrl"; + Name = "HydroMonitorValueListCtrl"; Size = new Size(913, 394); ((ISupportInitialize)gridControl1).EndInit(); - ((ISupportInitialize)gridView1).EndInit(); ((ISupportInitialize)hydroMonitorValueViewModelBindingSource).EndInit(); + ((ISupportInitialize)gridView1).EndInit(); ResumeLayout(false); } @@ -133,11 +137,11 @@ private DevExpress.XtraGrid.GridControl gridControl1; private DevExpress.XtraGrid.Views.Grid.GridView gridView1; - private DevExpress.XtraGrid.Columns.GridColumn colRelation; private DevExpress.XtraGrid.Columns.GridColumn colPropName; private DevExpress.XtraGrid.Columns.GridColumn colMonitorValue; private DevExpress.XtraGrid.Columns.GridColumn colDescription; private DevExpress.XtraGrid.Columns.GridColumn colUnitName; private BindingSource hydroMonitorValueViewModelBindingSource; + private DevExpress.XtraGrid.Columns.GridColumn colVisualName; } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.cs index 167bd7d..460a934 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueListCtrl.cs @@ -10,8 +10,9 @@ InitializeComponent(); this.gridView1.SetNormalEditView(30); this.gridView1.RegistCustomDrawRowIndicator(40); - this.colRelation.OptionsColumn.AllowEdit = false; + this.colVisualName.OptionsColumn.AllowEdit = false; this.colPropName.OptionsColumn.AllowEdit = false; + this.colUnitName.OptionsColumn.AllowEdit = false; this.colDescription.OptionsColumn.AllowEdit = false; } @@ -25,12 +26,21 @@ /// <summary> /// 缁戝畾鏁版嵁 /// </summary> - public void SetBindingData(List<HydroMonitorValueViewModel> allValueList) + public void SetBindingData(List<HydroMonitorValueViewModel> allMonitorValueList) { _allBindingList = new BindingList<HydroMonitorValueViewModel>(); - allValueList?.OrderBy(x => x.SortCode).ForEach(x => _allBindingList.Add(x)); + allMonitorValueList?.OrderBy(x => x.SortCode).ForEach(x => _allBindingList.Add(x)); this.hydroMonitorValueViewModelBindingSource.DataSource = _allBindingList; this.hydroMonitorValueViewModelBindingSource.ResetBindings(false); + } + + /// <summary> + /// 璁剧疆瑙嗗浘闈㈡澘 + /// </summary> + public void SetViewBoard() + { + this.colMonitorValue.OptionsColumn.AllowEdit = false; + this.colMonitorValue.ImageOptions.SvgImage = null; } //琛岀偣鍑� @@ -43,5 +53,8 @@ } this.HydroViewEvent?.Invoke(row.Vmo.Relation); } + + + } } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueViewModel.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueViewModel.cs index d4e8486..578fb3b 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueViewModel.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/12-monitor/02-value/HydroMonitorValueViewModel.cs @@ -15,7 +15,7 @@ /// </summary> public HydroMonitorValueViewModel(Yw.Vmo.HydroMonitorVmo vmo, Yw.Model.HydroVisualInfo visual) { - this.Relation = visual.Name; + this.VisualName = visual.Name; this.PropName = HydroVisualCalcuPropHelper.GetName(vmo.PropName); this.MonitorValue = null; this.UnitName = HydroVisualCalcuPropHelper.GetUnit(vmo.PropName); @@ -25,11 +25,12 @@ this.Vmo = vmo; } + /// <summary> /// 鏋勪欢 /// </summary> [DisplayName("鏋勪欢")] - public string Relation { get; set; } + public string VisualName { get; set; } /// <summary> /// 灞炴�� diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveCtrl.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveCtrl.cs index a1ab71c..0df5a3f 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveCtrl.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveCtrl.cs @@ -22,7 +22,7 @@ } /// <summary> - /// + /// 缁戝畾鏁版嵁 /// </summary> public void SetBindingData(List<HydroNodeLossViewModel> allNodeLossList) { diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveDlg.cs index c8dfcc3..4d7ebc3 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveDlg.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/01-curve/HydroSingleLossCurveDlg.cs @@ -1,4 +1,7 @@ -锘縩amespace Yw.WinFrmUI +锘縰sing Yw.Hydro; +using Yw.EPAnet; + +namespace Yw.WinFrmUI { public partial class HydroSingleLossCurveDlg : DevExpress.XtraBars.Ribbon.RibbonForm { @@ -9,23 +12,35 @@ } /// <summary> - /// + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, HydroCalcuResult calcuResult, Yw.Model.HydroVisualInfo visual) + { + if (hydroInfo == null) + { + return; + } + var network = hydroInfo.ToNetwork(); + if (network == null) + { + return; + } + var node = network.GetAllNodes()?.Find(x => x.Id == visual.Code); + if (node == null) + { + return; + } + var allPathList = network.AnalyzeDownstreamPath(node, calcuResult.EPAnetCalcuResult); + var allEpaLossList = network.GetChartNodeByPathLinks(allPathList, calcuResult.EPAnetCalcuResult); + var allNodeLossList = allEpaLossList?.Select(x => new HydroNodeLossViewModel(x)).ToList(); + SetBindingData(allNodeLossList); + } + + /// <summary> + /// 缁戝畾鏁版嵁 /// </summary> public void SetBindingData(List<HydroNodeLossViewModel> allNodeLossList) { - //allNodeLossList = new List<HydroNodeLossViewModel>() - //{ - // new HydroNodeLossViewModel(){ Code="1",Elev=10,StartHead=666,EndHead=623,Distance=10}, - // new HydroNodeLossViewModel(){ Code="2",Elev=20,StartHead=600,EndHead=567,Distance=30}, - // new HydroNodeLossViewModel(){ Code="3",Elev=25,StartHead=544,EndHead=521,Distance=100}, - // new HydroNodeLossViewModel(){ Code="4",Elev=19,StartHead=500,EndHead=789,Distance=110}, - // new HydroNodeLossViewModel(){ Code="5",Elev=23,StartHead=700,EndHead=677,Distance=150}, - // new HydroNodeLossViewModel(){ Code="6",Elev=22,StartHead=632,EndHead=600,Distance=200}, - // new HydroNodeLossViewModel(){ Code="7",Elev=13,StartHead=550,EndHead=510,Distance=300}, - // new HydroNodeLossViewModel(){ Code="8",Elev=13,StartHead=500,EndHead=345,Distance=500}, - // new HydroNodeLossViewModel(){ Code="9",Elev=11,StartHead=300,EndHead=289,Distance=700}, - // new HydroNodeLossViewModel(){ Code="10",Elev=10,StartHead=260,EndHead=150,Distance=820}, - //}; this.hydroSingleLossCurveCtrl1.SetBindingData(allNodeLossList); } diff --git a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/03-statistics/HydroSingleWorkingLossStatisticsDlg.cs b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/03-statistics/HydroSingleWorkingLossStatisticsDlg.cs index 038789d..da661fb 100644 --- a/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/03-statistics/HydroSingleWorkingLossStatisticsDlg.cs +++ b/WinFrmUI/Yw.WinFrmUI.Hydro.Core/18-loss/03-statistics/HydroSingleWorkingLossStatisticsDlg.cs @@ -16,17 +16,47 @@ /// </summary> public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo) { - var network = hydroInfo.ToNetwork(); - var calcuResult = network.Calcu(Yw.EPAnet.CalcuMode.MinorLoss); - var allEnergyPointList = network.AnalyzeEnergy(calcuResult); - SetBindingData(hydroInfo, allEnergyPointList); + if (hydroInfo == null) + { + return; + } + var calcuResult = hydroInfo.Calcu(Yw.EPAnet.CalcuMode.MinorLoss); + SetBindingData(hydroInfo, calcuResult); } /// <summary> - /// + /// 缁戝畾鏁版嵁 + /// </summary> + public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, HydroCalcuResult calcuResult) + { + if (hydroInfo == null) + { + return; + } + List<Yw.EPAnet.EnergyPoint> allEnergyList = null; + var network = hydroInfo.ToNetwork(); + if (network != null) + { + if (calcuResult != null) + { + if (calcuResult.EPAnetCalcuResult != null) + { + allEnergyList = network.AnalyzeEnergy(calcuResult.EPAnetCalcuResult); + } + } + } + SetBindingData(hydroInfo, allEnergyList); + } + + /// <summary> + /// 缁戝畾鏁版嵁 /// </summary> public void SetBindingData(Yw.Model.HydroModelInfo hydroInfo, List<Yw.EPAnet.EnergyPoint> allEnergyList) { + if (hydroInfo == null) + { + return; + } this.hydroSingleWorkingLossStatisticsCtrl1.SetBindingData(hydroInfo, allEnergyList); } -- Gitblit v1.9.3