From ef2ed31abaaec51c035c53d7596e788af4beb40a Mon Sep 17 00:00:00 2001
From: ningshuxia <ningshuxia0927@outlook.com>
Date: 星期二, 01 四月 2025 12:49:27 +0800
Subject: [PATCH] inp保存路径修改

---
 Desktop/PBS.Desktop/MainForm.cs |  207 ++++++++++++++++++++++++++++++++++-----------------
 1 files changed, 137 insertions(+), 70 deletions(-)

diff --git a/Desktop/PBS.Desktop/MainForm.cs b/Desktop/PBS.Desktop/MainForm.cs
index c64e974..0b9d870 100644
--- a/Desktop/PBS.Desktop/MainForm.cs
+++ b/Desktop/PBS.Desktop/MainForm.cs
@@ -10,17 +10,12 @@
 using HStation.WinFrmUI.Assets;
 using HStation.WinFrmUI.Basic;
 using HStation.WinFrmUI.Dict;
-using IBox.WinFrmUI;
-using NPOI.SS.Formula.Functions;
 using PBS.WinFrmUI;
+using PBS.WinFrmUI.Box;
 using PBS.WinFrmUI.DataAnalysis;
 using PBS.WinFrmUI.Hydro;
 using Yw.WinFrmUI;
 using Yw.WinFrmUI.Page;
-using PBS.Vmo;
-using PBS.WinFrmUI.Box;
-using MathNet.Numerics.LinearAlgebra.Factorization;
-using static System.Windows.Forms.VisualStyles.VisualStyleElement.Window;
 
 namespace PBS.Desktop
 {
@@ -164,6 +159,7 @@
             {
                 pguid = this.tabbedView1.ActiveDocument.Tag as PageGuid;
             }
+
             SelectModular(tag, pguid);
         }
 
@@ -174,16 +170,6 @@
         //界面记载事件
         private void MainForm_Load(object sender, EventArgs e)
         {
-            var homeGuid = new PageGuid();
-            var HomePage = new HomeXhsProjectPage();
-            HomePage.PageGuid = homeGuid;
-            HomePage.PageTitle.Caption = "首页";
-            // HomePage.PageTitle.HeaderSvgImage = svg;
-            //    HomePage.PageTitle.SvgImageSize = size;
-            if (!IsExistPage(homeGuid, true))
-            {
-                CreatePage(HomePage, homeGuid);
-            }
         }
 
         //界面显示事件
@@ -198,8 +184,13 @@
             //if (!IsExistPage(guid, true))
             //{
             //}
-
-            SelectModular("Home");
+            var pageGuid = new PageGuid()
+            {
+                Modular = "Home",
+                MoudingType = eMoudingType.Tab,
+                Function = "MapInfo",
+            };
+            SelectModular("Home", pageGuid);
         }
 
         //界面正在退出时确认
@@ -554,13 +545,20 @@
                 //初始功能列表
                 this.accordionControlFunction.Elements.Clear();
                 var list = GetAccordionElementList(modular);
-                this.accordionControlFunction.Elements.Clear();
                 if (list != null && list.Count > 0)
                 {
                     foreach (var element in list)
                     {
                         var accEle = GetAccordionControlElement(element);
                         this.accordionControlFunction.Elements.Add(accEle);
+                    }
+
+                    foreach (var element in list)
+                    {
+                        if (element.IsNormallyOpen && !IsExistPage(element.PageGuid, false))
+                        {
+                            element.Click.Invoke();
+                        }
                     }
                 }
                 _sel_modular = modular;
@@ -639,6 +637,8 @@
 
             return false;
         }
+
+        private bool _ibox_status = false;
 
         //获取
         private List<AccordionElement> GetAccordionElementList(string modular)
@@ -761,7 +761,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "AssetsCouplingMgr",
-                        }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImgItem32[41], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                         });
                         coupling.Elements = new List<AccordionElement>()
@@ -771,7 +771,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "AssetsBluntheadMgr",
-                        }, svgImgItem32[8], new Size(18, 18), (caption,guid,svg,size) =>
+                        }, svgImgItem32[43], new Size(18, 18), (caption,guid,svg,size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -841,7 +841,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "AssetsEmitterMgr",
-                        }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImgItem32[37], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                         });
                         emitter.Elements = new List<AccordionElement>()
@@ -1015,7 +1015,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "waterSupplySource",
-                        }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImgItem32[40], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                         });
                         waterSupplySource.Elements = new List<AccordionElement>()
@@ -1025,7 +1025,7 @@
                     Modular = "BasicData",
                     MoudingType = eMoudingType.Tab,
                     Function = "AssetsTankMgr",
-                }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) =>
+                }, svgImgItem32[39], new Size(18, 18), (caption, guid, svg, size) =>
                 {
                     if (!IsExistPage(guid, true))
                     {
@@ -1048,7 +1048,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "waterSupply",
-                        }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImgItem32[38], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                         });
                         waterSupply.Elements = new List<AccordionElement>()
@@ -1096,7 +1096,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "FacilityNetwork",
-                        }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImgItem32[36], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                         });
                         FacilityNetwork.Elements = new List<AccordionElement>()
@@ -1123,7 +1123,7 @@
                             Modular = "BasicData",
                             MoudingType = eMoudingType.Tab,
                             Function = "AssetsValveMgr",
-                        }, svgImgItem32[7], new Size(18, 18), (caption,guid,svg,size) =>
+                        }, svgImgItem32[42], new Size(18, 18), (caption,guid,svg,size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1173,12 +1173,12 @@
                         {
                             if (!IsExistPage(guid, true))
                             {
-                     /*           var page = new DocumentPage();
+                                var page=new  AssetsManufacturerMainPage();
                                 page.PageGuid = guid;
                                 page.PageTitle.Caption = caption;
                                 page.PageTitle.HeaderSvgImage = svg;
                                 page.PageTitle.SvgImageSize = size;
-                                CreatePage(page, guid);*/
+                                CreatePage(page,guid);
                             }
                         }),
                       waterSupplySource,
@@ -1281,7 +1281,24 @@
                                 CreatePage(page,guid);
                             }
                         }),
-                     }
+                        Get("电费配置",new PageGuid()
+                        {
+                            Modular = "BasicData",
+                            MoudingType = eMoudingType.Tab,
+                            Function = "ElecPriceMgr",
+                        }, svgImgItem32[12], new Size(18, 18), (caption,guid,svg,size) =>
+                        {
+                            if (!IsExistPage(guid, true))
+                            {
+                                var page=new  ElecPriceMgr();
+                                page.PageGuid = guid;
+                                page.PageTitle.Caption = caption;
+                                page.PageTitle.HeaderSvgImage = svg;
+                                page.PageTitle.SvgImageSize = size;
+                                CreatePage(page,guid);
+                            }
+                        }),
+                      }
                         };
 
                         var auth_config_ele = new AccordionElement()
@@ -1424,7 +1441,7 @@
                         {
                             Modular = "ModelManage",
                             MoudingType = eMoudingType.Tab,
-                            Function = " ",
+                            Function = "ModelTemplate",
                         }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
@@ -1441,22 +1458,34 @@
                         {
                             Modular = "ModelManage",
                             MoudingType = eMoudingType.Tab,
-                            Function = " ",
+                            Function = "QuickModeling",
                         }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
+                                var page = new QuickModelingPage();
+                                page.PageGuid = guid;
+                                page.PageTitle.Caption = caption;
+                                page.PageTitle.HeaderSvgImage = svg;
+                                page.PageTitle.SvgImageSize = size;
+                                CreatePage(page, guid);
                             }
                         });
                         var modelEdit = Get("模型编辑", new PageGuid()
                         {
                             Modular = "ModelManage",
                             MoudingType = eMoudingType.Tab,
-                            Function = " ",
+                            Function = "ModelEdit",
                         }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
+                                var page = new ModelEditPage();
+                                page.PageGuid = guid;
+                                page.PageTitle.Caption = caption;
+                                page.PageTitle.HeaderSvgImage = svg;
+                                page.PageTitle.SvgImageSize = size;
+                                CreatePage(page, guid);
                             }
                         });
                         list.Add(hydraulicScenario);
@@ -1485,6 +1514,23 @@
                                 CreatePage(page, guid);
                             }
                         });
+                        //var simulationDrill = Get("模拟调度", new PageGuid()
+                        //{
+                        //    Modular = "WaterSupplyAnalysis",
+                        //    MoudingType = eMoudingType.Tab,
+                        //    Function = "SimulationSchedule",
+                        //}, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
+                        //{
+                        //    if (!IsExistPage(guid, true))
+                        //    {
+                        //        var page = new SimulationSchedulePage();
+                        //        page.PageGuid = guid;
+                        //        page.PageTitle.Caption = caption;
+                        //        page.PageTitle.HeaderSvgImage = svg;
+                        //        page.PageTitle.SvgImageSize = size;
+                        //        CreatePage(page, guid);
+                        //    }
+                        //});
                         var forecastWater = Get("水量预测", new PageGuid()
                         {
                             Modular = "WaterSupplyAnalysis",
@@ -1575,17 +1621,6 @@
 
                 case "SmartHardware":
                     {
-                        var guid = new PageGuid();
-                        guid.Modular = "SmartHardware";
-                        if (!IsExistPage(guid, true))
-                        {
-                            var page = new IBoxHomeMgr();
-                            page.PageGuid = guid;
-                            page.PageTitle.Caption = "硬件详情";
-                            // page.PageTitle.HeaderSvgImage = svg;
-                            //    page.PageTitle.SvgImageSize = size;
-                            CreatePage(page, guid);
-                        }
                         // 创建一个列表来存储所有需要操作的 AccordionElement 对象
                         List<AccordionElement> allAccordionElements = new List<AccordionElement>();
                         AccordionElement accordionElement_Facility = new();
@@ -1594,7 +1629,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "FlowPressAnalysis",
-                        }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[7], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             var dlg = new PBS.WinFrmUI.Box.ChoiceFacilityDlg();
                             dlg.SetDataSource();
@@ -1606,17 +1641,36 @@
                                     foreach (var ele in item.Elements)
                                     {
                                         ele.Enable = true;
+                                        _ibox_status = true;
                                     }
                                 }
                             };
                             dlg.ShowDialog();
                         });
+                        AccordionElement accordionElement_IboxInfo = new();
+                        accordionElement_IboxInfo = Get("硬件详情", new PageGuid()
+                        {
+                            Modular = "SmartHardware",
+                            MoudingType = eMoudingType.Tab,
+                            Function = "IBoxInfo",
+                        }, svgImageIBox[10], new Size(18, 18), (caption, guid, svg, size) =>
+                        {
+                            if (!IsExistPage(guid, true))
+                            {
+                                var page = new IBoxInfoMgr();
+                                page.PageGuid = guid;
+                                page.PageTitle.Caption = caption;
+                                page.PageTitle.HeaderSvgImage = svg;
+                                page.PageTitle.SvgImageSize = size;
+                                CreatePage(page, guid);
+                            }
+                        }, true);
 
                         var accordionElement_Monitor = new AccordionElement()
                         {
                             Id = "monitor",
                             Caption = "监测分析",
-                            SvgImage = svgImgGroup32[0],
+                            SvgImage = svgImageIBox[4],
                             SvgImageSize = new Size(24, 24),
                             AllowGlyphSkinning = true,
                             Elements = new List<AccordionElement>()
@@ -1626,7 +1680,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "MonitorMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[3], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1643,7 +1697,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "AnalysisMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[1], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1662,7 +1716,7 @@
                         {
                             Id = "management",
                             Caption = "数据管理",
-                            SvgImage = svgImgGroup32[0],
+                            SvgImage = svgImageIBox[9],
                             SvgImageSize = new Size(24, 24),
                             AllowGlyphSkinning = true,
                             Elements = new List<AccordionElement>()
@@ -1672,7 +1726,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "ProtocolMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[11], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1689,7 +1743,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "MonitorConfigurationMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[5], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1706,11 +1760,11 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "DataFilterMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        },svgImageIBox[8], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
-                                var page = new IBoxFormDataFilter();
+                                var page = new DataFilter();
                                 page.PageGuid = guid;
                                 page.PageTitle.Caption = caption;
                                 page.PageTitle.HeaderSvgImage = svg;
@@ -1723,7 +1777,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "ParameterMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[0], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1732,7 +1786,6 @@
                                 page.PageTitle.Caption = caption;
                                 page.PageTitle.HeaderSvgImage = svg;
                                 page.PageTitle.SvgImageSize = size;
-
                                 CreatePage(page, guid);
                             }
                         }),/*Get("智控数据", new PageGuid()
@@ -1777,7 +1830,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "BasicInfoMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[2], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1793,7 +1846,7 @@
                             Modular = "SmartHardware",
                             MoudingType = eMoudingType.Tab,
                             Function = "LogManagentMgr",
-                        }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) =>
+                        }, svgImageIBox[6], new Size(18, 18), (caption, guid, svg, size) =>
                         {
                             if (!IsExistPage(guid, true))
                             {
@@ -1808,14 +1861,18 @@
                     }
                         };
                         allAccordionElements.Add(accordionElement_DataManagement);
-                        foreach (var item in allAccordionElements)
+                        if (!_ibox_status)
                         {
-                            foreach (var ele in item.Elements)
+                            foreach (var item in allAccordionElements)
                             {
-                                ele.Enable = false;
+                                foreach (var ele in item.Elements)
+                                {
+                                    ele.Enable = false;
+                                }
                             }
                         }
                         list.Add(accordionElement_Facility);
+                        list.Add(accordionElement_IboxInfo);
                         list.Add(accordionElement_Monitor);
                         list.Add(accordionElement_DataManagement);
                     }
@@ -1824,16 +1881,25 @@
 
                 case "Home":
                     {
-                        var homeGuid = new PageGuid();
-                        var HomePage = new HomeXhsProjectPage();
-                        HomePage.PageGuid = homeGuid;
-                        HomePage.PageTitle.Caption = "首页";
-                        // HomePage.PageTitle.HeaderSvgImage = svg;
-                        //    HomePage.PageTitle.SvgImageSize = size;
-                        if (!IsExistPage(homeGuid, true))
+                        AccordionElement accordionElement_Home = new();
+                        accordionElement_Home = Get("地图信息", new PageGuid()
                         {
-                            CreatePage(HomePage, homeGuid);
-                        }
+                            Modular = "Home",
+                            MoudingType = eMoudingType.Tab,
+                            Function = "MapInfo",
+                        }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) =>
+                        {
+                            if (!IsExistPage(guid, true))
+                            {
+                                var page = new HomePbsProjectPage();
+                                page.PageGuid = guid;
+                                page.PageTitle.Caption = caption;
+                                page.PageTitle.HeaderSvgImage = svg;
+                                page.PageTitle.SvgImageSize = size;
+                                CreatePage(page, guid);
+                            }
+                        }, true);
+                        list.Add(accordionElement_Home);
                     }
                     break;
 
@@ -1844,7 +1910,7 @@
             return list;
         }
 
-        private AccordionElement Get(string caption, PageGuid guid, SvgImage svg_img, Size size, Action<string, PageGuid, SvgImage, Size> action, bool glyph_skinning = true)
+        private AccordionElement Get(string caption, PageGuid guid, SvgImage svg_img, Size size, Action<string, PageGuid, SvgImage, Size> action, bool is_normally_open = false, bool glyph_skinning = true)
         {
             var ele = new AccordionElement();
             if (guid == null)
@@ -1861,6 +1927,7 @@
             ele.SvgImage = svg_img;
             ele.SvgImageSize = size;
             ele.AllowGlyphSkinning = glyph_skinning;
+            ele.IsNormallyOpen = is_normally_open;
             return ele;
         }
 

--
Gitblit v1.9.3