From d2ccacb3317aa6310f1b1bb5eb19fbdecba39ff9 Mon Sep 17 00:00:00 2001 From: duheng <2286773002@qq.com> Date: 星期四, 27 三月 2025 11:50:43 +0800 Subject: [PATCH] 增加设施最高楼层标高字段 --- Desktop/PBS.Desktop/MainForm.cs | 926 +++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 755 insertions(+), 171 deletions(-) diff --git a/Desktop/PBS.Desktop/MainForm.cs b/Desktop/PBS.Desktop/MainForm.cs index 2f4d721..5bca20a 100644 --- a/Desktop/PBS.Desktop/MainForm.cs +++ b/Desktop/PBS.Desktop/MainForm.cs @@ -7,10 +7,14 @@ using DevExpress.XtraEditors; using DevExpress.XtraTab; using HStation.WinFrmUI; +using HStation.WinFrmUI.Assets; using HStation.WinFrmUI.Basic; using HStation.WinFrmUI.Dict; -using NPOI.SS.Formula.Functions; -using System.IO; +using IBox.WinFrmUI; +using PBS.WinFrmUI; +using PBS.WinFrmUI.Box; +using PBS.WinFrmUI.DataAnalysis; +using PBS.WinFrmUI.Hydro; using Yw.WinFrmUI; using Yw.WinFrmUI.Page; @@ -156,6 +160,7 @@ { pguid = this.tabbedView1.ActiveDocument.Tag as PageGuid; } + SelectModular(tag, pguid); } @@ -180,8 +185,13 @@ //if (!IsExistPage(guid, true)) //{ //} - - SelectModular("BasicData"); + var pageGuid = new PageGuid() + { + Modular = "Home", + MoudingType = eMoudingType.Tab, + Function = "MapInfo", + }; + SelectModular("Home", pageGuid); } //界面正在退出时确认 @@ -543,6 +553,14 @@ 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; } @@ -571,6 +589,11 @@ dev_ele.Tag = ele; dev_ele.Style = DevExpress.XtraBars.Navigation.ElementStyle.Item; dev_ele.Click += delegate { ele.Click?.Invoke(); }; + dev_ele.Enabled = ele.Enable; + ele.EnableChangedEvent += (bol) => + { + dev_ele.Enabled = bol; + }; if (ele.Elements != null && ele.Elements.Count > 0) { dev_ele.Style = DevExpress.XtraBars.Navigation.ElementStyle.Group; @@ -599,6 +622,10 @@ ctrl_ele.OwnerElement.Expanded = true; this.accordionControlFunction.Refresh(); } + //if (!IsExistPage(pguid, true)) + //{ + // ele.Click.Invoke(); + //} return true; } else @@ -616,20 +643,24 @@ return false; } + private bool _ibox_status = false; + //获取 private List<AccordionElement> GetAccordionElementList(string modular) { var list = new List<AccordionElement>(); - if (modular == "BasicData") + switch (modular) { - var place_mgr_ele = new AccordionElement() - { - Id = "place", - Caption = "场所管理", - SvgImage = svgImgGroup32[0], - SvgImageSize = new Size(24, 24), - AllowGlyphSkinning = true, - Elements = new List<AccordionElement>() + case "BasicData": + { + var place_mgr_ele = new AccordionElement() + { + Id = "place", + Caption = "场所管理", + SvgImage = svgImgGroup32[0], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() { Get("行政区域",new PageGuid() { @@ -657,7 +688,7 @@ { if (!IsExistPage(guid, true)) { - var page = new DocumentPage(); + var page = new PlaceMgrPage(); page.PageGuid = guid; page.PageTitle.Caption = caption; page.PageTitle.HeaderSvgImage = svg; @@ -674,7 +705,7 @@ { if (!IsExistPage(guid, true)) { - var page = new DocumentPage(); + var page = new FacilityMgrPage(); page.PageGuid = guid; page.PageTitle.Caption = caption; page.PageTitle.HeaderSvgImage = svg; @@ -683,16 +714,16 @@ } }) } - }; + }; - var we_mgr_ele = new AccordionElement() - { - Id = "we", - Caption = "当量管理", - SvgImage = svgImgGroup32[1], - SvgImageSize = new Size(24, 24), - AllowGlyphSkinning = true, - Elements = new List<AccordionElement>() { + var we_mgr_ele = new AccordionElement() + { + Id = "we", + Caption = "当量管理", + SvgImage = svgImgGroup32[1], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() { Get("用水器具",new PageGuid() { Modular = "BasicData", @@ -702,7 +733,13 @@ { if (!IsExistPage(guid, true)) { - } + var page = new PBS.WinFrmUI.WE.WaterUtensilMainPage(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } }), Get("用水当量",new PageGuid() { @@ -713,20 +750,26 @@ { if (!IsExistPage(guid, true)) { + var page = new PBS.WinFrmUI.WE.WaterWEMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); } }) } - }; + }; - var coupling = Get("连接件", new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsCouplingMgr", - }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => - { - }); - coupling.Elements = new List<AccordionElement>() + var coupling = Get("连接件", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsCouplingMgr", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + }); + coupling.Elements = new List<AccordionElement>() { Get("闷头",new PageGuid() { @@ -798,15 +841,15 @@ }), }; - var emitter = Get("扩散器", new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsEmitterMgr", - }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => - { - }); - emitter.Elements = new List<AccordionElement>() + var emitter = Get("扩散器", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsEmitterMgr", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + }); + emitter.Elements = new List<AccordionElement>() { Get("喷头",new PageGuid() { @@ -861,31 +904,31 @@ }), }; - var Instrument = Get("仪表", new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsInstrumentMgr", - }, svgImgItem32[22], new Size(18, 18), (caption, guid, svg, size) => - { - }); - Instrument.Elements = new List<AccordionElement>() - { - Get("流量计",new PageGuid() + var Instrument = Get("设施仪表", new PageGuid() { Modular = "BasicData", MoudingType = eMoudingType.Tab, - Function = "AssetsFlowmeterMgr", - }, svgImgItem32[21], new Size(18, 18), (caption,guid,svg,size) => + Function = "AssetsInstrumentMgr", + }, svgImgItem32[22], new Size(18, 18), (caption, guid, svg, size) => + { + }); + Instrument.Elements = new List<AccordionElement>() + { + Get("水表",new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsMeterMgr", + }, svgImgItem32[6], new Size(18, 18), (caption,guid,svg,size) => { if (!IsExistPage(guid, true)) { - var page=new AssetsFlowmeterMgrPage(); + var page = new AssetsMeterMgrPage(); page.PageGuid = guid; page.PageTitle.Caption = caption; page.PageTitle.HeaderSvgImage = svg; page.PageTitle.SvgImageSize = size; - CreatePage(page,guid); + CreatePage(page, guid); } }), Get("压力表",new PageGuid() @@ -905,34 +948,34 @@ CreatePage(page,guid); } }), - Get("水表",new PageGuid() + Get("流量计",new PageGuid() { Modular = "BasicData", MoudingType = eMoudingType.Tab, - Function = "AssetsMeterMgr", - }, svgImgItem32[6], new Size(18, 18), (caption,guid,svg,size) => + Function = "AssetsFlowmeterMgr", + }, svgImgItem32[21], new Size(18, 18), (caption,guid,svg,size) => { if (!IsExistPage(guid, true)) { - var page = new AssetsMeterMgrPage(); + var page=new AssetsFlowmeterMgrPage(); page.PageGuid = guid; page.PageTitle.Caption = caption; page.PageTitle.HeaderSvgImage = svg; page.PageTitle.SvgImageSize = size; - CreatePage(page, guid); + CreatePage(page,guid); } }), }; - var Resistance = Get("阻件", new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsResistanceMgr", - }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => - { - }); - Resistance.Elements = new List<AccordionElement>() + var Resistance = Get("阻件", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsResistanceMgr", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + }); + Resistance.Elements = new List<AccordionElement>() { Get("换热器",new PageGuid() { @@ -970,15 +1013,19 @@ }), }; - var asset_mgr_ele = new AccordionElement() + #region 供水水源 + + var waterSupplySource = Get("供水水源", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "waterSupplySource", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + }); + waterSupplySource.Elements = new List<AccordionElement>() { - Id = "asset", - Caption = "产品管理", - SvgImage = svgImgGroup32[2], - SvgImageSize = new Size(24, 24), - AllowGlyphSkinning = true, - Elements = new List<AccordionElement>() { - Get("水池", new PageGuid() + Get("水池", new PageGuid() { Modular = "BasicData", MoudingType = eMoudingType.Tab, @@ -995,10 +1042,71 @@ CreatePage(page, guid); } }), - coupling, - emitter, - Instrument, - Get("管道",new PageGuid() + }; + + #endregion 供水水源 + + #region 供水装置 + + var waterSupply = Get("供水装置", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "waterSupply", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + }); + waterSupply.Elements = new List<AccordionElement>() + { + Get("水泵管理", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsPumpMgr", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new PumpProductMainPage(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }), + Get("成套设备", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsPackageMgr", + }, svgImgItem32[8], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new PackageManageMainPage(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }) + }; + + #endregion 供水装置 + + var FacilityNetwork = Get("设施管网", new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "FacilityNetwork", + }, svgImgItem32[7], new Size(18, 18), (caption, guid, svg, size) => + { + }); + FacilityNetwork.Elements = new List<AccordionElement>() + { + Get("管道",new PageGuid() { Modular = "BasicData", MoudingType = eMoudingType.Tab, @@ -1015,61 +1123,7 @@ CreatePage(page, guid); } }), - - Get("过渡件",new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsTranslationMgr", - }, svgImgItem32[6], new Size(18, 18), (caption,guid,svg,size) => - { - if (!IsExistPage(guid, true)) - { - var page = new AssetsTranslationMgrPage(); - page.PageGuid = guid; - page.PageTitle.Caption = caption; - page.PageTitle.HeaderSvgImage = svg; - page.PageTitle.SvgImageSize = size; - CreatePage(page, guid); - } - }), - - Get("水泵管理",new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsPumpMgr", - }, svgImgItem32[7], new Size(18, 18), (caption,guid,svg,size) => - { - if (!IsExistPage(guid, true)) - { - var page=new PumpProductMainPage(); - page.PageGuid = guid; - page.PageTitle.Caption = caption; - page.PageTitle.HeaderSvgImage = svg; - page.PageTitle.SvgImageSize = size; - CreatePage(page,guid); - } - }), - - Get("厂商管理",new PageGuid() - { - Modular = "BasicData", - MoudingType = eMoudingType.Tab, - Function = "AssetsManufacturerMgr", - }, svgImgItem32[6], new Size(18, 18), (caption,guid,svg,size) => - { - if (!IsExistPage(guid, true)) - { - /* var page = new DocumentPage(); - page.PageGuid = guid; - page.PageTitle.Caption = caption; - page.PageTitle.HeaderSvgImage = svg; - page.PageTitle.SvgImageSize = size; - CreatePage(page, guid);*/ - } - }), - Get("阀门管理",new PageGuid() + Get("阀门",new PageGuid() { Modular = "BasicData", MoudingType = eMoudingType.Tab, @@ -1086,29 +1140,67 @@ CreatePage(page,guid); } }), - - Get("成套设备",new PageGuid() + Get("过渡件",new PageGuid() { Modular = "BasicData", MoudingType = eMoudingType.Tab, - Function = "AssetsKitMgr", - }, svgImgItem32[8], new Size(18, 18), (caption,guid,svg,size) => + Function = "AssetsTranslationMgr", + }, svgImgItem32[6], new Size(18, 18), (caption,guid,svg,size) => { if (!IsExistPage(guid, true)) { + var page = new AssetsTranslationMgrPage(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); } - }) - } - }; + }), + coupling, + emitter, + }; - var system_config_ele = new AccordionElement() - { - Id = "asset", - Caption = "系统配置", - SvgImage = svgImgGroup32[3], - SvgImageSize = new Size(24, 24), - AllowGlyphSkinning = true, - Elements = new List<AccordionElement>() { + var asset_mgr_ele = new AccordionElement() + { + Id = "asset", + Caption = "产品管理", + SvgImage = svgImgGroup32[2], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() { + Get("厂商管理",new PageGuid() + { + Modular = "BasicData", + MoudingType = eMoudingType.Tab, + Function = "AssetsManufacturerMgr", + }, svgImgItem32[6], new Size(18, 18), (caption,guid,svg,size) => + { + if (!IsExistPage(guid, true)) + { + /* var page = new DocumentPage(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid);*/ + } + }), + waterSupplySource, + waterSupply, + FacilityNetwork, + Instrument, + } + }; + + var system_config_ele = new AccordionElement() + { + Id = "asset", + Caption = "系统配置", + SvgImage = svgImgGroup32[3], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() { Get("类型管理",new PageGuid() { Modular = "BasicData", @@ -1194,17 +1286,34 @@ 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() - { - Id = "asset", - Caption = "权限配置", - SvgImage = svgImgGroup32[4], - SvgImageSize = new Size(24, 24), - AllowGlyphSkinning = true, - Elements = new List<AccordionElement>() { + var auth_config_ele = new AccordionElement() + { + Id = "asset", + Caption = "权限配置", + SvgImage = svgImgGroup32[4], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() { Get("用户管理",new PageGuid() { Modular = "BasicData", @@ -1304,18 +1413,492 @@ } }), } - }; + }; - list.Add(place_mgr_ele); - list.Add(we_mgr_ele); - list.Add(asset_mgr_ele); - list.Add(system_config_ele); - list.Add(auth_config_ele); + list.Add(place_mgr_ele); + list.Add(we_mgr_ele); + list.Add(asset_mgr_ele); + list.Add(system_config_ele); + list.Add(auth_config_ele); + } + break; + + case "ModelManage": + { + var hydraulicScenario = Get("水力场景", new PageGuid() + { + Modular = "ModelManage", + MoudingType = eMoudingType.Tab, + Function = " ", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + //var page = new HydroSceneMgrPage(); + //page.PageGuid = guid; + //page.PageTitle.Caption = caption; + //page.PageTitle.HeaderSvgImage = svg; + //page.PageTitle.SvgImageSize = size; + //CreatePage(page, guid); + } + }); + var modelTemplate = Get("模型模版", new PageGuid() + { + Modular = "ModelManage", + MoudingType = eMoudingType.Tab, + Function = "ModelTemplate", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new ModelTemplatePage(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }); + var rapidModeling = Get("快速建模", new PageGuid() + { + Modular = "ModelManage", + MoudingType = eMoudingType.Tab, + 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 = "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); + list.Add(modelTemplate); + list.Add(rapidModeling); + list.Add(modelEdit); + } + break; + + case "WaterSupplyAnalysis": + { + var systemCurve = Get("系统曲线", new PageGuid() + { + Modular = "WaterSupplyAnalysis", + MoudingType = eMoudingType.Tab, + Function = " ", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new SystemCurvePage(); + 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", + MoudingType = eMoudingType.Tab, + Function = " ", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + } + }); + var operationalEvaluation = Get("运行评估", new PageGuid() + { + Modular = "WaterSupplyAnalysis", + MoudingType = eMoudingType.Tab, + Function = " ", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + } + }); + list.Add(systemCurve); + list.Add(forecastWater); + list.Add(operationalEvaluation); + } + break; + + case "DataAnalysis": + { + var analysis = Get("能耗分析", new PageGuid() + { + Modular = "DataAnalysis", + MoudingType = eMoudingType.Tab, + Function = "EnergyAnalysis", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new EnergyAnalysis(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }); + var analysis1 = Get("流量压力比对分析", new PageGuid() + { + Modular = "DataAnalysis", + MoudingType = eMoudingType.Tab, + Function = "FlowPressAnalysis", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new FlowPressAnalysis(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }); + + var analysis2 = Get("末端压力分析", new PageGuid() + { + Modular = "DataAnalysis", + MoudingType = eMoudingType.Tab, + Function = "EndPressAnalysis", + }, svgImgItem32[4], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new EndPressAnalysis(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }); + list.Add(analysis); + list.Add(analysis1); + list.Add(analysis2); + } + break; + + case "SmartHardware": + { + // 创建一个列表来存储所有需要操作的 AccordionElement 对象 + List<AccordionElement> allAccordionElements = new List<AccordionElement>(); + AccordionElement accordionElement_Facility = new(); + accordionElement_Facility = Get("选择设施", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "FlowPressAnalysis", + }, svgImageIBox[7], new Size(18, 18), (caption, guid, svg, size) => + { + var dlg = new PBS.WinFrmUI.Box.ChoiceFacilityDlg(); + dlg.SetDataSource(); + dlg.VisibleChanged += (bol) => + { + accordionElement_Facility.Enable = bol; + foreach (var item in allAccordionElements) + { + 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 = svgImageIBox[4], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() + { + Get("实时监测", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "MonitorMgr", + }, svgImageIBox[3], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new MonitorMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }), + Get("能耗分析", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "AnalysisMgr", + }, svgImageIBox[1], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new AnalysisMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }) + } + }; + allAccordionElements.Add(accordionElement_Monitor); + var accordionElement_DataManagement = new AccordionElement() + { + Id = "management", + Caption = "数据管理", + SvgImage = svgImageIBox[9], + SvgImageSize = new Size(24, 24), + AllowGlyphSkinning = true, + Elements = new List<AccordionElement>() + { + Get("协议配置", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "ProtocolMgr", + }, svgImageIBox[11], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new ProtocolMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }), + Get("监测配置", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "MonitorConfigurationMgr", + }, svgImageIBox[5], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new MonitorConfigurationMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }), + Get("数据处理", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "DataFilterMgr", + },svgImageIBox[8], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new DataFilter(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }), + Get("参数配置", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "ParameterMgr", + }, svgImageIBox[0], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new ParameterMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }),/*Get("智控数据", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "IntelligentControlData", + }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + } + }),Get("数据下发", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "DataDeliveryMgr", + }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new DataDeliveryMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }),Get("服务升级", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "ServiceUpgradeMgr", + }, svgImgItem32[2], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + } + })*/ + Get("基础信息", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "BasicInfoMgr", + }, svgImageIBox[2], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new BasicInfoMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }),Get("日志管理", new PageGuid() + { + Modular = "SmartHardware", + MoudingType = eMoudingType.Tab, + Function = "LogManagentMgr", + }, svgImageIBox[6], new Size(18, 18), (caption, guid, svg, size) => + { + if (!IsExistPage(guid, true)) + { + var page = new LogManagentMgr(); + page.PageGuid = guid; + page.PageTitle.Caption = caption; + page.PageTitle.HeaderSvgImage = svg; + page.PageTitle.SvgImageSize = size; + CreatePage(page, guid); + } + }), + } + }; + allAccordionElements.Add(accordionElement_DataManagement); + if (!_ibox_status) + { + foreach (var item in allAccordionElements) + { + 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); + } + + break; + + case "Home": + { + AccordionElement accordionElement_Home = new(); + accordionElement_Home = Get("地图信息", new PageGuid() + { + 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; + + default: + break; } + 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) @@ -1332,6 +1915,7 @@ ele.SvgImage = svg_img; ele.SvgImageSize = size; ele.AllowGlyphSkinning = glyph_skinning; + ele.IsNormallyOpen = is_normally_open; return ele; } -- Gitblit v1.9.3