From f97b3ccbfd63b62ec875223fcc417633f6ce2989 Mon Sep 17 00:00:00 2001
From: Shuxia Ning <NingShuxia0927@outlook.com>
Date: 星期一, 09 十二月 2024 17:38:26 +0800
Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0

---
 WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs |  150 +++++++++++++++++++++++---------------------------
 1 files changed, 69 insertions(+), 81 deletions(-)

diff --git a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs
index 3ae706b..1cb1f0d 100644
--- a/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs
+++ b/WinFrmUI/HStation.WinFrmUI.Xhs.Core/03-simulation/XhsProjectSimulationMgrPage.cs
@@ -15,20 +15,17 @@
             this.PageTitle.Caption = "姘村姏妯℃嫙";
             this.PageTitle.HeaderSvgImage = this.svgImg32[0];
             this.PageTitle.SvgImageSize = new Size(24, 24);
-            this.simulationFunctionMgrCtrl1.ShowProjectSiteInfoEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent;
-            this.simulationFunctionMgrCtrl1.ShowProjectSiteSimulationEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent;
-            this.simulationFunctionMgrCtrl1.ShowProjectSiteWorkingEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent;
-            this.simulationFunctionMgrCtrl1.ProjectSiteWorkingUpdateEvent += XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingUpdateEvent;
-            this.simulationFunctionMgrCtrl1.ProjectSiteWorkingRemoveEvent += XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingRemoveEvent;
-            this.simulationFunctionMgrCtrl1.ProjectSiteWorkingCheckedEvent += XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent;
-            this.simulationFunctionMgrCtrl1.CreateProjectSiteSchemeEvent += XhsProjectSimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent;
-            this.simulationFunctionMgrCtrl1.ShowProjectSiteSchemeEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSchemeEvent;
-            this.simulationFunctionMgrCtrl1.ShowProjectSiteSchemeWorkingEvent += XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSchemeWorkingEvent;
+            this.simulationFunctionMgrCtrl1.ShowProjectSiteInfoEvent += SimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent;
+            this.simulationFunctionMgrCtrl1.ShowProjectSiteSimulationEvent += SimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent;
+            this.simulationFunctionMgrCtrl1.ShowProjectSiteWorkingEvent += SimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent;
+            this.simulationFunctionMgrCtrl1.ProjectSiteWorkingUpdateEvent += SimulationFunctionMgrCtrl1_ProjectSiteWorkingUpdateEvent;
+            this.simulationFunctionMgrCtrl1.ProjectSiteWorkingRemoveEvent += SimulationFunctionMgrCtrl1_ProjectSiteWorkingRemoveEvent;
+            this.simulationFunctionMgrCtrl1.ProjectSiteWorkingCheckedEvent += SimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent;
+            this.simulationFunctionMgrCtrl1.CreateProjectSiteSchemeEvent += SimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent;
         }
 
         private XhsProjectVmo _project = null;//椤圭洰
         private object _locker = new object();//閿佸畾瀵硅薄
-
 
         /// <summary>
         /// 鍒濆鍖栨暟鎹簮
@@ -68,8 +65,13 @@
         #region 鍔熻兘闈㈡澘
 
         //鏄剧ず椤圭洰绔欐鍐典簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, SvgImage svgImage)
+        private void SimulationFunctionMgrCtrl1_ShowProjectSiteInfoEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                Yw.Model.HydroModelInfo hydroInfo,
+                SvgImage svgImage
+            )
         {
             lock (_locker)
             {
@@ -78,6 +80,7 @@
                     Modular = this.PageGuid.Modular,
                     MoudingType = eMoudingType.Tab,
                     Function = SimulationFunctionHelper.Info,
+                    TagName = $"{project.ID}-{projectSite.ID}"
                 };
                 if (!IsExistPage(guid, true))
                 {
@@ -90,8 +93,15 @@
         }
 
         //鏄剧ず椤圭洰绔欐按鍔涙ā鎷熶簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, Dictionary<HydroWorkingVmo, bool> allWorkingCheckedListDict, SvgImage svgImage)
+        private void SimulationFunctionMgrCtrl1_ShowProjectSiteSimulationEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                XhsSchemeVmo scheme,
+                Yw.Model.HydroModelInfo hydroInfo,
+                Dictionary<HydroWorkingVmo, bool> allWorkingCheckedListDict,
+                SvgImage svgImage
+            )
         {
             lock (_locker)
             {
@@ -100,7 +110,7 @@
                     Modular = this.PageGuid.Modular,
                     MoudingType = eMoudingType.Tab,
                     Function = SimulationFunctionHelper.Simulation,
-                    TagName = projectSite.ID.ToString()
+                    TagName = $"{project.ID}-{projectSite.ID}-{scheme?.ID}"
                 };
                 if (!IsExistPage(guid, true))
                 {
@@ -108,17 +118,24 @@
                     page.PageTitle.HeaderSvgImage = svgImage;
                     page.AppendWorkingEvent += (working) =>
                     {
-                        this.simulationFunctionMgrCtrl1.AppendWorking(working);
+                        this.simulationFunctionMgrCtrl1.AppendWorking(scheme, working);
                     };
-                    page.SetBindingData(project, projectSite, hydroInfo, allWorkingCheckedListDict);
+                    page.SetBindingData(project, projectSite, scheme, hydroInfo, allWorkingCheckedListDict);
                     CreatePage(page, guid);
                 }
             }
         }
 
         //鏄剧ず椤圭洰绔欏伐鍐典簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working, SvgImage svgImage)
+        private void SimulationFunctionMgrCtrl1_ShowProjectSiteWorkingEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                XhsSchemeVmo scheme,
+                Yw.Model.HydroModelInfo hydroInfo,
+                HydroWorkingVmo working,
+                SvgImage svgImage
+            )
         {
             lock (_locker)
             {
@@ -127,29 +144,34 @@
                     Modular = this.PageGuid.Modular,
                     MoudingType = eMoudingType.Tab,
                     Function = SimulationFunctionHelper.Working,
-                    TagName = working.ID.ToString()
+                    TagName = $"{project.ID}-{projectSite.ID}-{scheme?.ID}-{working.ID}"
                 };
                 if (!IsExistPage(guid, true))
                 {
                     var page = new XhsProjectSimulationWorkingPage();
                     page.UpdateWorkingEvent += (rhs) =>
                     {
-                        this.simulationFunctionMgrCtrl1.UpdateWorking(rhs);
+                        this.simulationFunctionMgrCtrl1.UpdateWorking(scheme, rhs);
                     };
                     page.RemoveWorkingEvent += (rhs) =>
                     {
-                        this.simulationFunctionMgrCtrl1.RemoveWorking(rhs);
+                        this.simulationFunctionMgrCtrl1.RemoveWorking(scheme, rhs);
                     };
                     page.PageTitle.HeaderSvgImage = svgImage;
-                    page.SetBindingData(project, projectSite, hydroInfo, working);
+                    page.SetBindingData(project, projectSite, scheme, hydroInfo, working);
                     CreatePage(page, guid);
                 }
             }
         }
 
         //椤圭洰绔欏伐鍐垫洿鏂颁簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingUpdateEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working)
+        private void SimulationFunctionMgrCtrl1_ProjectSiteWorkingUpdateEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                XhsSchemeVmo scheme,
+                HydroWorkingVmo working
+            )
         {
             var guid = new PageGuid()
             {
@@ -172,8 +194,13 @@
         }
 
         //椤圭洰绔欏伐鍐电Щ闄や簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingRemoveEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working)
+        private void SimulationFunctionMgrCtrl1_ProjectSiteWorkingRemoveEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                XhsSchemeVmo scheme,
+                HydroWorkingVmo working
+            )
         {
             var guid = new PageGuid()
             {
@@ -196,8 +223,14 @@
         }
 
         //椤圭洰绔欏伐鍐甸�夋嫨鏀瑰彉浜嬩欢
-        private void XhsProjectSimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working, bool hasChecked)
+        private void SimulationFunctionMgrCtrl1_ProjectSiteWorkingCheckedEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                XhsSchemeVmo scheme,
+                HydroWorkingVmo working,
+                bool hasChecked
+            )
         {
             var guid = new PageGuid()
             {
@@ -220,8 +253,13 @@
         }
 
         //椤圭洰绔欐柟妗堝垱寤轰簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, Yw.Model.HydroModelInfo hydroInfo, SvgImage svgImage)
+        private void SimulationFunctionMgrCtrl1_CreateProjectSiteSchemeEvent
+            (
+                XhsProjectVmo project,
+                XhsProjectSiteVmo projectSite,
+                Yw.Model.HydroModelInfo hydroInfo,
+                SvgImage svgImage
+            )
         {
             WaitFormHelper.ShowWaitForm(this.FindForm(), "姝e湪鍔犺浇妯″瀷锛岃绋嶄警...");
             var dlg = new AddXhsSchemeDlg();
@@ -232,56 +270,6 @@
             };
             dlg.SetBindingData(project, projectSite, hydroInfo);
             dlg.ShowDialog();
-        }
-
-        //鏄剧ず椤圭洰绔欐柟妗堜簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSchemeEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, XhsSchemeVmo scheme, Yw.Model.HydroModelInfo hydroInfo, Dictionary<HydroWorkingVmo, bool> dict, SvgImage svgImage)
-        {
-            lock (_locker)
-            {
-                var guid = new PageGuid()
-                {
-                    Modular = this.PageGuid.Modular,
-                    MoudingType = eMoudingType.Tab,
-                    Function = SimulationFunctionHelper.Scheme,
-                    TagName = scheme.ID.ToString()
-                };
-                if (!IsExistPage(guid, true))
-                {
-                    var page = new XhsProjectSimulationSchemePage();
-                    page.PageTitle.HeaderSvgImage = svgImage;
-                    page.AppendWorkingEvent += (working) =>
-                    {
-                        this.simulationFunctionMgrCtrl1.AppendSchemeWorking(scheme, working);
-                    };
-                    page.SetBindingData(project, projectSite, scheme, hydroInfo, dict);
-                    CreatePage(page, guid);
-                }
-            }
-        }
-
-        //鏄剧ず椤圭洰绔欐柟妗堝伐鍐典簨浠�
-        private void XhsProjectSimulationFunctionMgrCtrl1_ShowProjectSiteSchemeWorkingEvent
-            (XhsProjectVmo project, XhsProjectSiteVmo projectSite, XhsSchemeVmo scheme, Yw.Model.HydroModelInfo hydroInfo, HydroWorkingVmo working, SvgImage svgImage)
-        {
-            lock (_locker)
-            {
-                var guid = new PageGuid()
-                {
-                    Modular = this.PageGuid.Modular,
-                    MoudingType = eMoudingType.Tab,
-                    Function = SimulationFunctionHelper.Working,
-                    TagName = working.ID.ToString()
-                };
-                if (!IsExistPage(guid, true))
-                {
-                    var page = new XhsProjectSimulationWorkingPage();
-                    page.PageTitle.HeaderSvgImage = svgImage;
-                    page.SetBindingData(project, projectSite, scheme, hydroInfo, working);
-                    CreatePage(page, guid);
-                }
-            }
         }
 
         #endregion

--
Gitblit v1.9.3