From 30d1c646b63604b59ce9d665054bd748e56e171c Mon Sep 17 00:00:00 2001
From: lixiaojun <1287241240@qq.com>
Date: 星期三, 14 八月 2024 18:27:20 +0800
Subject: [PATCH] 新增水力模拟界面

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-scheme/03-hydraulic-simulation/XhsSchemeHydraulicSimulationPage.cs |   81 +++++++++++++++++++++++++++++++++++++++-
 1 files changed, 79 insertions(+), 2 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 26e6491..1ccfa4f 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,12 +1,41 @@
-锘縩amespace HStation.WinFrmUI
+锘縰sing DevExpress.XtraEditors;
+using Yw.EPAnet;
+
+namespace HStation.WinFrmUI
 {
     public partial class XhsSchemeHydraulicSimulationPage : DocumentPage
     {
         public XhsSchemeHydraulicSimulationPage()
         {
-            InitializeComponent(); 
+            InitializeComponent();
+            this.xhsProjectHydroQ3dCtrl1.ClickParterEvent += XhsProjectHydroQ3dCtrl1_ClickParterEvent;
         }
 
+
+
+        private long _projectId;
+        private Yw.Model.HydroModelInfo _hydro = null;
+
+
+        /// <summary>
+        /// 
+        /// </summary>
+        public async Task SetBindingData(long projectId)
+        {
+            _projectId = projectId;
+            var projectSite = await new HStation.BLL.XhsProjectSiteStd().GetDefaultByProjectID(projectId);
+            if (projectSite == null)
+            {
+                return;
+            }
+            var hydroRelation = await new Yw.BLL.HydroModelRelation().GetDefaultByObjectTypeAndObjectIDOfPurpose(HStation.Xhs.DataType.XhsProjectSite, projectSite.ID, HStation.Xhs.Purpose.Simulation);
+            if (hydroRelation == null)
+            {
+                return;
+            }
+            _hydro = await new Yw.BLL.HydroModelInfo().GetByID(hydroRelation.ModelID);
+            this.xhsProjectAssetsPropertyCtrl1.SetBindingData(_hydro);
+        }
 
         /// <summary>
         /// 鍒濆鍖栨暟鎹�
@@ -14,6 +43,54 @@
         public override void InitialDataSource()
         {
             base.InitialDataSource();
+            this.xhsProjectHydroQ3dCtrl1.SetBindingData(_hydro);
+
+        }
+
+        //bimface 鏋勪欢鐐瑰嚮
+        private void XhsProjectHydroQ3dCtrl1_ClickParterEvent(string objectId)
+        {
+            if (_hydro == null)
+            {
+                return;
+            }
+            this.xhsProjectAssetsPropertyCtrl1.SetPropertyViewModel(objectId);
+        }
+
+        private void barBtnCheck_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            if (_hydro == null)
+            {
+                return;
+            }
+            var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro);
+            var result = netWork.Check();
+            XtraMessageBox.Show(JsonHelper.Object2FormatJson(result));
+        }
+
+        private void barBtnCalcu_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            if (_hydro == null)
+            {
+                return;
+            }
+            var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro);
+            var list = netWork.Calcu();
+            XtraMessageBox.Show(JsonHelper.Object2FormatJson(list));
+        }
+
+        private void barBtnParter_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            var dlg = new HydroParterListDlg();
+            dlg.SetBindingData(_hydro);
+            dlg.Show();
+        }
+
+        private void barBtnInp_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
+        {
+            var netWork = Yw.Hydro.ParseHelper.ToNetwork(_hydro);
+            var result = netWork.ToInpString();
+            XtraMessageBox.Show(result);
         }
     }
 }

--
Gitblit v1.9.3