From 651d1f87d2e0e26021c20f3667e1db7b1349b478 Mon Sep 17 00:00:00 2001 From: duheng <2784771470@qq.com> Date: 星期一, 23 九月 2024 10:27:44 +0800 Subject: [PATCH] 冲突缺少文件补充 --- WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/03-hydraulic-simulation/XhsSchemeHydraulicSimulationPage.cs | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 108 insertions(+), 7 deletions(-) diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/03-hydraulic-simulation/XhsSchemeHydraulicSimulationPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/03-hydraulic-simulation/XhsSchemeHydraulicSimulationPage.cs index 1ccfa4f..b256241 100644 --- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/03-hydraulic-simulation/XhsSchemeHydraulicSimulationPage.cs +++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/03-hydraulic-simulation/XhsSchemeHydraulicSimulationPage.cs @@ -1,5 +1,8 @@ -锘縰sing DevExpress.XtraEditors; +锘縰sing DevExpress.Xpo.Helpers; +using DevExpress.XtraEditors; +using Yw.DAL.Basic; using Yw.EPAnet; +using Yw.WinFrmUI.Q3d; namespace HStation.WinFrmUI { @@ -9,12 +12,15 @@ { InitializeComponent(); this.xhsProjectHydroQ3dCtrl1.ClickParterEvent += XhsProjectHydroQ3dCtrl1_ClickParterEvent; + } private long _projectId; private Yw.Model.HydroModelInfo _hydro = null; + private Yw.Model.HydroParterInfo _parter = null; + private List<CalcuParter> _allCalcuParterList = null; /// <summary> @@ -23,7 +29,7 @@ public async Task SetBindingData(long projectId) { _projectId = projectId; - var projectSite = await new HStation.BLL.XhsProjectSiteStd().GetDefaultByProjectID(projectId); + var projectSite = await BLLFactory<HStation.BLL.XhsProjectSite>.Instance.GetDefaultByProjectID(projectId); if (projectSite == null) { return; @@ -34,7 +40,7 @@ return; } _hydro = await new Yw.BLL.HydroModelInfo().GetByID(hydroRelation.ModelID); - this.xhsProjectAssetsPropertyCtrl1.SetBindingData(_hydro); + // this.xhsProjectSimulationPropertyCtrl1.SetBindingData(_hydro); } /// <summary> @@ -52,9 +58,47 @@ { if (_hydro == null) { + _parter = null; return; } - this.xhsProjectAssetsPropertyCtrl1.SetPropertyViewModel(objectId); + var allParterList = _hydro.GetAllParters(); + _parter = allParterList.Find(x => x.Code == objectId); + this.xhsProjectSimulationPropertyCtrl1.SelectParter(_parter, allParterList); + if (_parter != null) + { + if (_allCalcuParterList != null && _allCalcuParterList.Count > 0) + { + var calcuParter = _allCalcuParterList.Find(x => x.Id == _parter.Code); + if (calcuParter != null) + { + IHydroCalcuProperty calcuProperty = null; + if (calcuParter is CalcuNode calcuNode) + { + var calcuNodeProperty = new Yw.WinFrmUI.HydroCalcuNodeProperty(); + calcuNodeProperty.ID = _parter.ID; + calcuNodeProperty.CalcuPress = calcuNode.Press; + calcuNodeProperty.CalcuDemand = calcuNode.Demand; + calcuNodeProperty.CalcuHead = calcuNode.Head; + calcuProperty = calcuNodeProperty; + } + else if (calcuParter is CalcuLink calcuLink) + { + var calcuLinkProperty = new Yw.WinFrmUI.HydroCalcuLinkProperty(); + calcuLinkProperty.ID = _parter.ID; + calcuLinkProperty.CalcuHeadLoss = calcuLink.Headloss; + calcuLinkProperty.CalcuFlow = calcuLink.Flow; + calcuLinkProperty.CalcuVelocity = calcuLink.Velocity; + calcuProperty = calcuLinkProperty; + } + + if (calcuProperty != null) + { + this.xhsProjectSimulationPropertyCtrl1.UpdateCalcuProperty(calcuProperty); + } + } + } + } + } private void barBtnCheck_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) @@ -75,8 +119,45 @@ return; } var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro); - var list = netWork.Calcu(); - XtraMessageBox.Show(JsonHelper.Object2FormatJson(list)); + var result = netWork.Calcu(); + if (!result.Succeed) + { + XtraMessageBox.Show(JsonHelper.Object2FormatJson(result)); + return; + } + _allCalcuParterList = result.GetParterList(); + TipFormHelper.ShowSucceed("璁$畻鎴愬姛"); + if (_parter != null) + { + var calcuParter = _allCalcuParterList.Find(x => x.Id == _parter.Code); + if (calcuParter != null) + { + IHydroCalcuProperty calcuProperty = null; + if (calcuParter is CalcuNode calcuNode) + { + var calcuNodeProperty = new Yw.WinFrmUI.HydroCalcuNodeProperty(); + calcuNodeProperty.ID = _parter.ID; + calcuNodeProperty.CalcuPress = calcuNode.Press; + calcuNodeProperty.CalcuDemand = calcuNode.Demand; + calcuNodeProperty.CalcuHead = calcuNode.Head; + calcuProperty = calcuNodeProperty; + } + else if (calcuParter is CalcuLink calcuLink) + { + var calcuLinkProperty = new Yw.WinFrmUI.HydroCalcuLinkProperty(); + calcuLinkProperty.ID = _parter.ID; + calcuLinkProperty.CalcuHeadLoss = calcuLink.Headloss; + calcuLinkProperty.CalcuFlow = calcuLink.Flow; + calcuLinkProperty.CalcuVelocity = calcuLink.Velocity; + calcuProperty = calcuLinkProperty; + } + + if (calcuProperty != null) + { + this.xhsProjectSimulationPropertyCtrl1.UpdateCalcuProperty(calcuProperty); + } + } + } } private void barBtnParter_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) @@ -88,9 +169,29 @@ private void barBtnInp_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { + var fileName = Yw.WinFrmUI.FileDialogHelper.SaveInp("瀵煎嚭Inp鏂囦欢"); + if (string.IsNullOrEmpty(fileName)) + { + return; + } var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro); var result = netWork.ToInpString(); - XtraMessageBox.Show(result); + File.WriteAllText(fileName, result); + TipFormHelper.ShowSucceed("瀵煎嚭鎴愬姛"); + } + + private async void barBtnSave_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) + { + if (_hydro == null) + { + return; + } + var bll = new Yw.BLL.HydroModelInfo(); + var result = await bll.Save(_hydro); + if (result > 0) + { + Yw.WinFrmUI.TipFormHelper.ShowSucceed("淇濆瓨鎴愬姛"); + } } } } -- Gitblit v1.9.3