From 294b81166f21e12247e784d6bf404f5f34b2ee19 Mon Sep 17 00:00:00 2001 From: lixiaojun <1287241240@qq.com> Date: 星期三, 19 二月 2025 12:51:14 +0800 Subject: [PATCH] Merge branch 'master' of http://47.103.154.90:83/r/HStation/XHS.V1.0 --- Desktop/HStation.Desktop.Xhs.Core/MainForm.cs | 1472 ++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 1,209 insertions(+), 263 deletions(-) diff --git a/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs b/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs index 371e609..73f6ed2 100644 --- a/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs +++ b/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs @@ -1,12 +1,13 @@ using DevExpress.XtraBars.Docking; using DevExpress.XtraBars.Docking2010.Views; +using DevExpress.XtraBars.Docking2010.Views.WindowsUI; using DevExpress.XtraBars.Navigation; using DevExpress.XtraBars.Ribbon; using DevExpress.XtraEditors; using HStation.WinFrmUI; using HStation.WinFrmUI.Assets; -using HStation.WinFrmUI.Auth.Core._02_User; using HStation.WinFrmUI.Basic; +using HStation.WinFrmUI.Dict; using HStation.WinFrmUI.Xhs.PumpProduct; using System.IO; using Yw.WinFrmUI; @@ -19,6 +20,26 @@ public MainForm() { InitializeComponent(); + this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon; + } + + //验证权限 + private void VerifyAuth() + { + this.tileNavPane.BeginUpdate(); + var list = AuthHelper.PageAuthHaveTreeList; + foreach (NavButton item in this.tileNavPane.Buttons) + { + if (item.Tag != null && !string.IsNullOrEmpty(item.Tag.ToString())) + { + var pageAuthItem = list?.Find(x => x.Permission == item.Tag.ToString()); + if (pageAuthItem != null) + { + item.Visible = pageAuthItem.Have; + } + } + } + this.tileNavPane.EndUpdate(); } #region TileNavPane 相关处理 @@ -96,7 +117,7 @@ }; if (!IsExistPage(guid, true)) { - var page = new HomeXhsProjectPage_Bak(); + var page = new HomeXhsProjectPage(); CreatePage(page, guid); } } @@ -117,6 +138,8 @@ } } + private List<TilePeekItem> _modelItem; + //模型管理 private void nbModelMgr_ElementClick(object sender, NavElementEventArgs e) { @@ -124,156 +147,114 @@ var hitInfo = this.tileNavPane.CalcHitInfo(pt); if (hitInfo.ButtonInfo != null) { - if (_bimfaceMgrBeakCtrl == null) - { - var peakItemList = new List<Yw.WinFrmUI.TilePeekItem>() - { - new TilePeekItem() - { - Caption="水力场景", - SvgImage=svgImg32Model[0], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Hydro", - MoudingType=eMoudingType.Tab, - Function="SceneMgr", - }; - if(!IsExistPage(guid,true)) + /* if (_bimfaceMgrBeakCtrl == null) { - var page=new Yw.WinFrmUI.HydroSceneMgrPage(); - CreatePage(page,guid); + var peakItemList = new List<Yw.WinFrmUI.TilePeekItem>() + { + new TilePeekItem() + { + Caption="水力场景", + SvgImage=svgImg32Model[0], + SvgImageSize=new Size(24,24), + Click=()=>{ + this.flyoutPanel1.HideBeakForm(); + var guid=new PageGuid(){ + Modular="Hydro", + MoudingType=eMoudingType.Tab, + Function="SceneMgr", + }; + if(!IsExistPage(guid,true)) + { + var page=new Yw.WinFrmUI.HydroSceneMgrPage(); + CreatePage(page,guid); + } + } + }, + new TilePeekItem(){ + Caption="水力模型", + SvgImage=svgImg32Model[1], + SvgImageSize=new Size(24,24), + Click=()=>{ + this.flyoutPanel1.HideBeakForm(); + var guid=new PageGuid(){ + Modular="Hydro", + MoudingType=eMoudingType.Tab, + Function="ModelMgr", + }; + if(!IsExistPage(guid,true)) + { + var page=new HStation.WinFrmUI.HydroModelMgrPage(); + CreatePage(page,guid); + } + } + }, + new TilePeekItem(){ + Caption="三维模型", + SvgImage=svgImg32Model[2], + SvgImageSize=new Size(24,24), + Click=()=>{ + this.flyoutPanel1.HideBeakForm(); + var guid=new PageGuid(){ + Modular="Bimface", + MoudingType=eMoudingType.Tab, + Function="FileMgr", + }; + if(!IsExistPage(guid,true)) + { + var page=new Yw.WinFrmUI.BimfaceFileMgrPage(); + CreatePage(page,guid); + } + } + }, + }; + _bimfaceMgrBeakCtrl = peakItemList.CreatePeekCtrl(); } - } - }, - new TilePeekItem(){ - Caption="水力模型", - SvgImage=svgImg32Model[1], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Hydro", - MoudingType=eMoudingType.Tab, - Function="ModelMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new HStation.WinFrmUI.HydroModelMgrPage(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="三维模型", - SvgImage=svgImg32Model[2], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Bimface", - MoudingType=eMoudingType.Tab, - Function="FileMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new Yw.WinFrmUI.BimfaceFileMgrPage(); - CreatePage(page,guid); - } - } - }, - }; - _bimfaceMgrBeakCtrl = peakItemList.CreatePeekCtrl(); - } + + */ + _modelItem = CreateHydroPeekList(); + if (e.Element.Tag == null) + return; + SetMenuAuth(e.Element.Tag.ToString(), _modelItem); + _bimfaceMgrBeakCtrl = _modelItem.CreatePeekCtrl(ClickTilePeekItem); this.flyoutPanel1.Size = _bimfaceMgrBeakCtrl.Size; this.flyoutPanelControl1.Controls.Clear(); this.flyoutPanelControl1.Controls.Add(_bimfaceMgrBeakCtrl); var rectangle = this.RectangleToScreen(hitInfo.ButtonInfo.Bounds); + this.flyoutPanel1.ShowBeakForm(rectangle); } } private Control _bimfaceMgrBeakCtrl = null;//bimface管理弹出界面 - private Control _SystemProductManageCtrl = null;//产品管理弹出界面 - private Control _SystemSystemConfigCtrl = null;//系统配置弹出界面 + private Control _SystemConfigCtrl = null;//系统配置弹出界面 + + private Control _AuthConfigCtrl = null;//权限配置弹出界面 //产品管理 - private void nbProductManage_ElementClick(object sender, NavElementEventArgs e) + private void nbAssetsMgr_ElementClick(object sender, NavElementEventArgs e) { var pt = this.tileNavPane.PointToClient(MousePosition); var hitInfo = this.tileNavPane.CalcHitInfo(pt); if (hitInfo.ButtonInfo != null) { - if (_SystemProductManageCtrl == null) + if (_assetsMgrCtrl == null) { - var peakItemList = new List<Yw.WinFrmUI.TilePeekItem>() - { - new TilePeekItem(){ - Caption="水泵管理", - SvgImage=svgImg32Model[3], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Asstes", - MoudingType=eMoudingType.Tab, - Function="pumpMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new PumpProductMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="阀门管理", - SvgImage=svgImg32Model[7], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Asstes", - MoudingType=eMoudingType.Tab, - Function="ValveMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new ValveManageMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="管道附件", - SvgImage=svgImg32Model[7], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Asstes", - MoudingType=eMoudingType.Tab, - Function="ElbowMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new ElbowManageMainPanel(); - CreatePage(page,guid); - } - } - }, - }; - _SystemProductManageCtrl = peakItemList.CreatePeekCtrl(); + if (e.Element.Tag == null) + return; + var peekItemList = CreateAssetsPeekList(); + SetMenuAuth(e.Element.Tag.ToString(), peekItemList); + _assetsMgrCtrl = peekItemList.CreatePeekCtrl(ClickTilePeekItem); } - this.flyoutPanel1.Size = _SystemProductManageCtrl.Size; + this.flyoutPanel1.Size = _assetsMgrCtrl.Size; this.flyoutPanelControl1.Controls.Clear(); - this.flyoutPanelControl1.Controls.Add(_SystemProductManageCtrl); + this.flyoutPanelControl1.Controls.Add(_assetsMgrCtrl); var rectangle = this.RectangleToScreen(hitInfo.ButtonInfo.Bounds); this.flyoutPanel1.ShowBeakForm(rectangle); } } + + private TileControl _assetsMgrCtrl = null;//资产管理控件 //系统配置 private void nbSystemConfig_ElementClick(object sender, NavElementEventArgs e) @@ -282,143 +263,1032 @@ var hitInfo = this.tileNavPane.CalcHitInfo(pt); if (hitInfo.ButtonInfo != null) { - if (_SystemSystemConfigCtrl == null) + if (_SystemConfigCtrl == null) { - var peakItemList = new List<Yw.WinFrmUI.TilePeekItem>() - { - new TilePeekItem(){ - Caption="角色管理", - SvgImage=svgImg32Model[3], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Auth", - MoudingType=eMoudingType.Tab, - Function="UserManageMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new UserMgrMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="用户管理", - SvgImage=svgImg32Model[7], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Auth", - MoudingType=eMoudingType.Tab, - Function="ValveMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new ValveManageMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="菜单管理", - SvgImage=svgImg32Model[2], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Auth", - MoudingType=eMoudingType.Tab, - Function="TypeMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new SysTypeManageMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="类型管理", - SvgImage=svgImg32Model[4], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Basic", - MoudingType=eMoudingType.Tab, - Function="TypeMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new SysTypeManageMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="分类管理", - SvgImage=svgImg32Model[5], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Basic", - MoudingType=eMoudingType.Tab, - Function="CataLogMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new SysCatalogManageMainPanel(); - CreatePage(page,guid); - } - } - }, new TilePeekItem(){ - Caption="属性管理", - SvgImage=svgImg32Model[6], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Basic", - MoudingType=eMoudingType.Tab, - Function="PropMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new SysPropManageMainPanel(); - CreatePage(page,guid); - } - } - }, - new TilePeekItem(){ - Caption="字典类型", - SvgImage=svgImg32Model[1], - SvgImageSize=new Size(24,24), - Click=()=>{ - this.flyoutPanel1.HideBeakForm(); - var guid=new PageGuid(){ - Modular="Dict", - MoudingType=eMoudingType.Tab, - Function="DictMgr", - }; - if(!IsExistPage(guid,true)) - { - var page=new HStation.WinFrmUI.Dict.DictManageMainPanel(); - CreatePage(page,guid); - } - } - }, - }; - _SystemSystemConfigCtrl = peakItemList.CreatePeekCtrl(); + if (e.Element.Tag == null) + return; + var peekItemList = CreateBasicPeekList(); + SetMenuAuth(e.Element.Tag.ToString(), peekItemList); + _SystemConfigCtrl = peekItemList.CreatePeekCtrl(ClickTilePeekItem); } - this.flyoutPanel1.Size = _SystemSystemConfigCtrl.Size; + this.flyoutPanel1.Size = _SystemConfigCtrl.Size; this.flyoutPanelControl1.Controls.Clear(); - this.flyoutPanelControl1.Controls.Add(_SystemSystemConfigCtrl); + this.flyoutPanelControl1.Controls.Add(_SystemConfigCtrl); var rectangle = this.RectangleToScreen(hitInfo.ButtonInfo.Bounds); this.flyoutPanel1.ShowBeakForm(rectangle); + } + } + + /// <summary> + /// 权限配置 + /// </summary> + /// <param name="sender"></param> + /// <param name="e"></param> + private void nbAuthConfig_ElementClick(object sender, NavElementEventArgs e) + { + var pt = this.tileNavPane.PointToClient(MousePosition); + var hitInfo = this.tileNavPane.CalcHitInfo(pt); + if (hitInfo.ButtonInfo != null) + { + if (_AuthConfigCtrl == null) + { + var peekItemList = CreateAuthPeekList(); + if (e.Element.Tag == null) + return; + SetMenuAuth(e.Element.Tag.ToString(), peekItemList); + _AuthConfigCtrl = peekItemList.CreatePeekCtrl(ClickTilePeekItem); + } + this.flyoutPanel1.Size = _AuthConfigCtrl.Size; + this.flyoutPanelControl1.Controls.Clear(); + this.flyoutPanelControl1.Controls.Add(_AuthConfigCtrl); + var rectangle = this.RectangleToScreen(hitInfo.ButtonInfo.Bounds); + this.flyoutPanel1.ShowBeakForm(rectangle); + } + } + + private void SetMenuAuth(string tag_str, List<TilePeekItem> tilePeekItem) + { + if (string.IsNullOrEmpty(tag_str)) + return; + var pageAuth = AuthHelper.GetRootPageAuth(tag_str); + if (pageAuth == null) + return; + + var page_child_list = pageAuth.Children?.Where(x => x.Type == 2).ToList(); + if (page_child_list != null && page_child_list.Count > 0) + { + foreach (var menu in page_child_list) + { + SetTilePeekItemVisibility(tilePeekItem, menu); + } + } + } + + private void SetTilePeekItemVisibility(List<TilePeekItem> tilePeekItems, Yw.Dto.MenuAuthorityHaveTreeDto menu) + { + foreach (var item in tilePeekItems) + { + if (menu.Permission == item.Tag.ToString()) + { + item.Visibility = menu.Have; + } + + if (item.Children != null && item.Children.Count > 0) + { + SetTilePeekItemVisibility(item.Children, menu); + } + } + } + + //创建水力Peek列表 + private List<TilePeekItem> CreateHydroPeekList() + { + var list = new List<TilePeekItem>(); + + //水力场景 + var peekScene = new TilePeekItem(); + peekScene.Id = HydroFunctionHelper.SceneMgr; + peekScene.Caption = "水力场景"; + peekScene.SvgImage = svgImg32Model[0]; + peekScene.SvgImageSize = new Size(24, 24); + peekScene.Tag = HydroFunctionHelper.SceneMgr; + list.Add(peekScene); + + //三维模型 + var peekBimface = new TilePeekItem(); + peekBimface.Id = HydroFunctionHelper.BimfaceMgr; + peekBimface.Caption = "三维模型"; + peekBimface.SvgImage = svgImg32Model[2]; + peekBimface.SvgImageSize = new Size(24, 24); + peekBimface.Tag = HydroFunctionHelper.BimfaceMgr; + list.Add(peekBimface); + + //水力模型 + var peekModel = new TilePeekItem(); + peekModel.Id = HydroFunctionHelper.ModelMgr; + peekModel.Caption = "水力模型"; + peekModel.SvgImage = svgImg32Model[1]; + peekModel.SvgImageSize = new Size(24, 24); + peekModel.Tag = HydroFunctionHelper.ModelMgr; + list.Add(peekModel); + return list; + } + + //创建系统配置Peek列表 + private List<TilePeekItem> CreateBasicPeekList() + { + var list = new List<TilePeekItem>(); + + //类型 + var peekType = new TilePeekItem(); + peekType.Id = BasicFunctionHelper.TypeMgr; + peekType.Caption = "类型管理"; + peekType.SvgImage = svgImg32Model[4]; + peekType.SvgImageSize = new Size(24, 24); + peekType.Tag = BasicFunctionHelper.TypeMgr; + list.Add(peekType); + + //分类 + var peekCatalog = new TilePeekItem(); + peekCatalog.Id = BasicFunctionHelper.CatalogMgr; + peekCatalog.Caption = "分类管理"; + peekCatalog.SvgImage = svgImg32Model[5]; + peekCatalog.SvgImageSize = new Size(24, 24); + peekCatalog.Tag = BasicFunctionHelper.CatalogMgr; + list.Add(peekCatalog); + + //属性 + var peekProp = new TilePeekItem(); + peekProp.Id = BasicFunctionHelper.PropMgr; + peekProp.Caption = "属性管理"; + peekProp.SvgImage = svgImg32Model[6]; + peekProp.SvgImageSize = new Size(24, 24); + peekProp.Tag = BasicFunctionHelper.PropMgr; + list.Add(peekProp); + + //标签 + var peekFlag = new TilePeekItem(); + peekFlag.Id = BasicFunctionHelper.FlagMgr; + peekFlag.Caption = "标签管理"; + peekFlag.SvgImage = svgImg32Model[20]; + peekFlag.SvgImageSize = new Size(24, 24); + peekFlag.Tag = BasicFunctionHelper.FlagMgr; + list.Add(peekFlag); + + //字典 + var peekDict = new TilePeekItem(); + peekDict.Id = BasicFunctionHelper.DictMgr; + peekDict.Caption = "字典管理"; + peekDict.SvgImage = svgImg32Model[25]; + peekDict.SvgImageSize = new Size(24, 24); + peekDict.Tag = BasicFunctionHelper.DictMgr; + list.Add(peekDict); + return list; + } + + //创建权限Peek列表 + private List<TilePeekItem> CreateAuthPeekList() + { + var list = new List<TilePeekItem>(); + + //角色 + var peekRole = new TilePeekItem(); + peekRole.Id = AuthFunctionHelper.RoleMgr; + peekRole.Caption = "角色管理"; + peekRole.SvgImage = svgImg32Model[21]; + peekRole.SvgImageSize = new Size(24, 24); + peekRole.Tag = AuthFunctionHelper.RoleMgr; + list.Add(peekRole); + + //用户 + var peekUser = new TilePeekItem(); + peekUser.Id = AuthFunctionHelper.UserMgr; + peekUser.Caption = "用户管理"; + peekUser.SvgImage = svgImg32Model[22]; + peekUser.SvgImageSize = new Size(24, 24); + peekUser.Tag = AuthFunctionHelper.UserMgr; + list.Add(peekUser); + + //菜单 + var peekMenu = new TilePeekItem(); + peekMenu.Id = AuthFunctionHelper.MenuMgr; + peekMenu.Caption = "菜单管理"; + peekMenu.SvgImage = svgImg32Model[23]; + peekMenu.SvgImageSize = new Size(24, 24); + peekMenu.Tag = AuthFunctionHelper.MenuMgr; + list.Add(peekMenu); + + //角色用户 + var peekUserRole = new TilePeekItem(); + peekUserRole.Id = AuthFunctionHelper.RoleProjectMenu; + peekUserRole.Caption = "角色用户"; + peekUserRole.SvgImage = svgImg32Model[24]; + peekUserRole.SvgImageSize = new Size(24, 24); + peekUserRole.Tag = AuthFunctionHelper.RoleProjectMenu; + list.Add(peekUserRole); + + //登录日志 + var peekUserLoginLog = new TilePeekItem(); + peekUserLoginLog.Id = AuthFunctionHelper.UserLoginLog; + peekUserLoginLog.Caption = "登录日志"; + peekUserLoginLog.SvgImage = svgImg32Model[26]; + peekUserLoginLog.SvgImageSize = new Size(24, 24); + peekUserLoginLog.Tag = AuthFunctionHelper.UserLoginLog; + list.Add(peekUserLoginLog); + + //个人中心 + var peekUserInfo = new TilePeekItem(); + peekUserInfo.Id = AuthFunctionHelper.UserInfo; + peekUserInfo.Caption = "个人中心"; + peekUserInfo.SvgImage = svgImg32Model[27]; + peekUserInfo.SvgImageSize = new Size(24, 24); + peekUserInfo.Tag = AuthFunctionHelper.UserInfo; + list.Add(peekUserInfo); + return list; + } + + //创建资产Peek列表 + private List<TilePeekItem> CreateAssetsPeekList() + { + var list = new List<TilePeekItem>(); + + //水池 + var peekTank = new TilePeekItem(); + peekTank.Id = AssetsFunctionHelper.TankMgr; + peekTank.Caption = "水池"; + peekTank.SvgImage = AssetsMainSvgImageHelper.Tank; + peekTank.SvgImageSize = new Size(24, 24); + peekTank.Tag = AssetsFunctionHelper.TankMgr; + list.Add(peekTank); + + //连接件 + var peekCoupling = new TilePeekItem(); + peekCoupling.Id = AssetsFunctionHelper.CouplingMgr; + peekCoupling.Caption = "连接件"; + peekCoupling.SvgImage = AssetsMainSvgImageHelper.Coupling; + peekCoupling.SvgImageSize = new Size(24, 24); + peekCoupling.Tag = AssetsFunctionHelper.CouplingMgr; + peekCoupling.Children = new List<TilePeekItem>(); + list.Add(peekCoupling); + + //闷头 + var peekBlunthead = new TilePeekItem(); + peekBlunthead.Id = AssetsFunctionHelper.BluntheadMgr; + peekBlunthead.Caption = "闷头"; + peekBlunthead.SvgImage = AssetsMainSvgImageHelper.Blunthead; + peekBlunthead.SvgImageSize = new Size(24, 24); + peekBlunthead.Tag = AssetsFunctionHelper.BluntheadMgr; + peekCoupling.Children.Add(peekBlunthead); + + //弯头 + var peekElbow = new TilePeekItem(); + peekElbow.Id = AssetsFunctionHelper.ElbowMgr; + peekElbow.Caption = "弯头"; + peekElbow.SvgImage = AssetsMainSvgImageHelper.Elbow; + peekElbow.SvgImageSize = new Size(24, 24); + peekElbow.Tag = AssetsFunctionHelper.ElbowMgr; + peekCoupling.Children.Add(peekElbow); + + //三通 + var peekThreelink = new TilePeekItem(); + peekThreelink.Id = AssetsFunctionHelper.ThreelinkMgr; + peekThreelink.Caption = "三通"; + peekThreelink.SvgImage = AssetsMainSvgImageHelper.Threelink; + peekThreelink.SvgImageSize = new Size(24, 24); + peekThreelink.Tag = AssetsFunctionHelper.ThreelinkMgr; + peekCoupling.Children.Add(peekThreelink); + + //四通 + var peekFourlink = new TilePeekItem(); + peekFourlink.Id = AssetsFunctionHelper.FourlinkMgr; + peekFourlink.Caption = "四通"; + peekFourlink.SvgImage = AssetsMainSvgImageHelper.Fourlink; + peekFourlink.SvgImageSize = new Size(24, 24); + peekFourlink.Tag = AssetsFunctionHelper.FourlinkMgr; + peekCoupling.Children.Add(peekFourlink); + + //扩散器 + var peekEmitter = new TilePeekItem(); + peekEmitter.Id = AssetsFunctionHelper.EmitterMgr; + peekEmitter.Caption = "扩散器"; + peekEmitter.SvgImage = AssetsMainSvgImageHelper.Emitter; + peekEmitter.SvgImageSize = new Size(24, 24); + peekEmitter.Tag = AssetsFunctionHelper.EmitterMgr; + peekEmitter.Children = new List<TilePeekItem>(); + list.Add(peekEmitter); + + //喷头 + var peekNozzle = new TilePeekItem(); + peekNozzle.Id = AssetsFunctionHelper.NozzleMgr; + peekNozzle.Caption = "喷头"; + peekNozzle.SvgImage = AssetsMainSvgImageHelper.Nozzle; + peekNozzle.SvgImageSize = new Size(24, 24); + peekNozzle.Tag = AssetsFunctionHelper.NozzleMgr; + peekEmitter.Children.Add(peekNozzle); + + //消火栓 + var peekHydrant = new TilePeekItem(); + peekHydrant.Id = AssetsFunctionHelper.HydrantMgr; + peekHydrant.Caption = "消火栓"; + peekHydrant.SvgImage = AssetsMainSvgImageHelper.Hydrant; + peekHydrant.SvgImageSize = new Size(24, 24); + peekHydrant.Tag = AssetsFunctionHelper.HydrantMgr; + peekEmitter.Children.Add(peekHydrant); + + //冷却塔 + var peekCooling = new TilePeekItem(); + peekCooling.Id = AssetsFunctionHelper.CoolingMgr; + peekCooling.Caption = "冷却塔"; + peekCooling.SvgImage = AssetsMainSvgImageHelper.Cooling; + peekCooling.SvgImageSize = new Size(24, 24); + peekCooling.Tag = AssetsFunctionHelper.CoolingMgr; + peekEmitter.Children.Add(peekCooling); + + //水表 + var peekMeter = new TilePeekItem(); + peekMeter.Id = AssetsFunctionHelper.MeterMgr; + peekMeter.Caption = "水表"; + peekMeter.SvgImage = AssetsMainSvgImageHelper.Meter; + peekMeter.SvgImageSize = new Size(24, 24); + peekMeter.Tag = AssetsFunctionHelper.MeterMgr; + list.Add(peekMeter); + + //仪表 + var peekInstrument = new TilePeekItem(); + peekInstrument.Id = AssetsFunctionHelper.InstrumentMgr; + peekInstrument.Caption = "仪表"; + peekInstrument.SvgImage = AssetsMainSvgImageHelper.Instrument; + peekInstrument.SvgImageSize = new Size(24, 24); + peekInstrument.Tag = AssetsFunctionHelper.InstrumentMgr; + peekInstrument.Children = new List<TilePeekItem>(); + list.Add(peekInstrument); + + //流量计 + var peekFlowmeter = new TilePeekItem(); + peekFlowmeter.Id = AssetsFunctionHelper.FlowmeterMgr; + peekFlowmeter.Caption = "流量计"; + peekFlowmeter.SvgImage = AssetsMainSvgImageHelper.Flowmeter; + peekFlowmeter.SvgImageSize = new Size(24, 24); + peekFlowmeter.Tag = AssetsFunctionHelper.FlowmeterMgr; + peekInstrument.Children.Add(peekFlowmeter); + + //压力表 + var peekPressmeter = new TilePeekItem(); + peekPressmeter.Id = AssetsFunctionHelper.PressmeterMgr; + peekPressmeter.Caption = "压力表"; + peekPressmeter.SvgImage = AssetsMainSvgImageHelper.Pressmeter; + peekPressmeter.SvgImageSize = new Size(24, 24); + peekPressmeter.Tag = AssetsFunctionHelper.PressmeterMgr; + peekInstrument.Children.Add(peekPressmeter); + + //管道 + var peekPipe = new TilePeekItem(); + peekPipe.Id = AssetsFunctionHelper.PipeMgr; + peekPipe.Caption = "管道"; + peekPipe.SvgImage = AssetsMainSvgImageHelper.Pipe; + peekPipe.SvgImageSize = new Size(24, 24); + peekPipe.Tag = AssetsFunctionHelper.PipeMgr; + list.Add(peekPipe); + + //过渡件 + var peekTranslation = new TilePeekItem(); + peekTranslation.Id = AssetsFunctionHelper.TranslationMgr; + peekTranslation.Caption = "过渡件"; + peekTranslation.SvgImage = AssetsMainSvgImageHelper.Translation; + peekTranslation.SvgImageSize = new Size(24, 24); + peekTranslation.Tag = AssetsFunctionHelper.TranslationMgr; + list.Add(peekTranslation); + + //水泵 + var peekPump = new TilePeekItem(); + peekPump.Id = AssetsFunctionHelper.PumpMgr; + peekPump.Caption = "水泵"; + peekPump.SvgImage = AssetsMainSvgImageHelper.Pump; + peekPump.SvgImageSize = new Size(24, 24); + peekPump.Tag = AssetsFunctionHelper.PumpMgr; + list.Add(peekPump); + + //阀门 + var peekValve = new TilePeekItem(); + peekValve.Id = AssetsFunctionHelper.ValveMgr; + peekValve.Caption = "阀门"; + peekValve.SvgImage = AssetsMainSvgImageHelper.Valve; + peekValve.SvgImageSize = new Size(24, 24); + peekValve.Tag = AssetsFunctionHelper.ValveMgr; + list.Add(peekValve); + + //阻件 + var peekResistance = new TilePeekItem(); + peekResistance.Id = AssetsFunctionHelper.ResistanceMgr; + peekResistance.Caption = "阻件"; + peekResistance.SvgImage = AssetsMainSvgImageHelper.Resistance; + peekResistance.SvgImageSize = new Size(24, 24); + peekResistance.Tag = AssetsFunctionHelper.ResistanceMgr; + peekResistance.Children = new List<TilePeekItem>(); + list.Add(peekResistance); + + //换热器 + var peekExchanger = new TilePeekItem(); + peekExchanger.Id = AssetsFunctionHelper.ExchangerMgr; + peekExchanger.Caption = "换热器"; + peekExchanger.SvgImage = AssetsMainSvgImageHelper.Exchanger; + peekExchanger.SvgImageSize = new Size(24, 24); + peekExchanger.Tag = AssetsFunctionHelper.ExchangerMgr; + peekResistance.Children.Add(peekExchanger); + + //压缩机 + var peekCompressor = new TilePeekItem(); + peekCompressor.Id = AssetsFunctionHelper.CompressorMgr; + peekCompressor.Caption = "压缩机"; + peekCompressor.SvgImage = AssetsMainSvgImageHelper.Compressor; + peekCompressor.SvgImageSize = new Size(24, 24); + peekCompressor.Tag = AssetsFunctionHelper.CompressorMgr; + peekResistance.Children.Add(peekCompressor); + + return list; + } + + //点击Peek + private void ClickTilePeekItem(TilePeekItem item) + { + if (item == null) + { + return; + } + + var tagStr = item.Tag?.ToString(); + switch (tagStr) + { + case AssetsFunctionHelper.CouplingMgr: + { + var pt = _assetsMgrCtrl.PointToClient(MousePosition); + var hitInfo = _assetsMgrCtrl.CalcHitInfo(pt); + var control = item.Children.CreatePeekCtrl(ClickTilePeekItem); + this.flyoutPanel2.Size = control.Size; + this.flyoutPanelControl2.Controls.Clear(); + this.flyoutPanelControl2.Controls.Add(control); + var rectangle = _assetsMgrCtrl.RectangleToScreen(hitInfo.ItemInfo.Bounds); + this.flyoutPanel2.ShowBeakForm(rectangle); + } + break; + + case AssetsFunctionHelper.EmitterMgr: + { + var pt = _assetsMgrCtrl.PointToClient(MousePosition); + var hitInfo = _assetsMgrCtrl.CalcHitInfo(pt); + var control = item.Children.CreatePeekCtrl(ClickTilePeekItem); + this.flyoutPanel2.Size = control.Size; + this.flyoutPanelControl2.Controls.Clear(); + this.flyoutPanelControl2.Controls.Add(control); + var rectangle = _assetsMgrCtrl.RectangleToScreen(hitInfo.ItemInfo.Bounds); + this.flyoutPanel2.ShowBeakForm(rectangle); + } + break; + + case AssetsFunctionHelper.InstrumentMgr: + { + var pt = _assetsMgrCtrl.PointToClient(MousePosition); + var hitInfo = _assetsMgrCtrl.CalcHitInfo(pt); + var control = item.Children.CreatePeekCtrl(ClickTilePeekItem); + this.flyoutPanel2.Size = control.Size; + this.flyoutPanelControl2.Controls.Clear(); + this.flyoutPanelControl2.Controls.Add(control); + var rectangle = _assetsMgrCtrl.RectangleToScreen(hitInfo.ItemInfo.Bounds); + this.flyoutPanel2.ShowBeakForm(rectangle); + } + break; + + case AssetsFunctionHelper.ResistanceMgr: + { + var pt = _assetsMgrCtrl.PointToClient(MousePosition); + var hitInfo = _assetsMgrCtrl.CalcHitInfo(pt); + var control = item.Children.CreatePeekCtrl(ClickTilePeekItem); + this.flyoutPanel2.Size = control.Size; + this.flyoutPanelControl2.Controls.Clear(); + this.flyoutPanelControl2.Controls.Add(control); + var rectangle = _assetsMgrCtrl.RectangleToScreen(hitInfo.ItemInfo.Bounds); + this.flyoutPanel2.ShowBeakForm(rectangle); + } + break; + + case AssetsFunctionHelper.TankMgr: + { + this.flyoutPanel1.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.TankMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsTankMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.BluntheadMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.BluntheadMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsBluntheadMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.ElbowMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.ElbowMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsElbowMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.ThreelinkMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.ThreelinkMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsThreelinkMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.FourlinkMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.FourlinkMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsFourlinkMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.NozzleMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.NozzleMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsSprinklerMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.HydrantMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.HydrantMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsHydrantMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.CoolingMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.CoolingMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsCoolingMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.MeterMgr: + { + this.flyoutPanel1.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.MeterMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsMeterMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.FlowmeterMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.FlowmeterMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsFlowmeterMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.PressmeterMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.PressmeterMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsPressmeterMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.PipeMgr: + { + this.flyoutPanel1.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.PipeMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsPipeMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.TranslationMgr: + { + this.flyoutPanel1.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.TranslationMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsTranslationMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.PumpMgr: + { + this.flyoutPanel1.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.PumpMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new PumpProductMainPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.ValveMgr: + { + this.flyoutPanel1.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.ValveMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsValveMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.ExchangerMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.ExchangerMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsExchangerMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AssetsFunctionHelper.CompressorMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AssetsFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AssetsFunctionHelper.CompressorMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new AssetsCompressorMgrPage(); + CreatePage(page, guid); + } + } + break; + + #region 权限 + + case AuthFunctionHelper.RoleMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AuthFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AuthFunctionHelper.RoleMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new RoleMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AuthFunctionHelper.UserMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AuthFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AuthFunctionHelper.UserMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new UserMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AuthFunctionHelper.MenuMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AuthFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AuthFunctionHelper.MenuMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new MenuMgrPage(); + CreatePage(page, guid); + } + } + break; + + case AuthFunctionHelper.RoleProjectMenu: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AuthFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AuthFunctionHelper.RoleProjectMenu + }; + if (!IsExistPage(guid, true)) + { + var page = new RoleProjectMenuPage(); + CreatePage(page, guid); + } + } + break; + + case AuthFunctionHelper.UserInfo: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AuthFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AuthFunctionHelper.UserInfo + }; + if (!IsExistPage(guid, true)) + { + var dlg = new PersonalCenterDlg(); + dlg.Show(); + } + } + break; + + case AuthFunctionHelper.UserLoginLog: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = AuthFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = AuthFunctionHelper.UserLoginLog + }; + if (!IsExistPage(guid, true)) + { + var page = new UserLoginLogPage(); + CreatePage(page, guid); + } + } + break; + + #endregion 权限 + + #region 基础模块 + + case BasicFunctionHelper.TypeMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = BasicFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = BasicFunctionHelper.TypeMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new SysTypeManageMainPanel(); + CreatePage(page, guid); + } + } + break; + + case BasicFunctionHelper.CatalogMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = BasicFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = BasicFunctionHelper.CatalogMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new SysCatalogManageMainPanel(); + CreatePage(page, guid); + } + } + break; + + case BasicFunctionHelper.PropMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = BasicFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = BasicFunctionHelper.PropMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new SysPropManageMainPanel(); + CreatePage(page, guid); + } + } + break; + + case BasicFunctionHelper.FlagMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = BasicFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = BasicFunctionHelper.FlagMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new SysFlagManageMainPanel(); + CreatePage(page, guid); + } + } + break; + + case BasicFunctionHelper.DictMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = BasicFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = BasicFunctionHelper.DictMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new DictManageMainPanel(); + CreatePage(page, guid); + } + } + break; + + #endregion 基础模块 + + #region 水力 + + case HydroFunctionHelper.SceneMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = HydroFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = HydroFunctionHelper.SceneMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new Yw.WinFrmUI.HydroSceneMgrPage(); + CreatePage(page, guid); + } + } + break; + + case HydroFunctionHelper.ModelMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = HydroFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = HydroFunctionHelper.ModelMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new HStation.WinFrmUI.HydroModelMgrPage(); + CreatePage(page, guid); + } + } + break; + + case HydroFunctionHelper.BimfaceMgr: + { + this.flyoutPanel2.HideBeakForm(); + var guid = new PageGuid() + { + Modular = HydroFunctionHelper.Modular, + MoudingType = eMoudingType.Tab, + Function = HydroFunctionHelper.BimfaceMgr + }; + if (!IsExistPage(guid, true)) + { + var page = new Yw.WinFrmUI.BimfaceFileMgrPage(); + CreatePage(page, guid); + } + } + break; + + #endregion 水力 } } @@ -429,6 +1299,7 @@ //界面记载事件 private void MainForm_Load(object sender, EventArgs e) { + VerifyAuth(); } //界面显示事件 @@ -443,7 +1314,6 @@ if (!IsExistPage(guid, true)) { var page = new HomeXhsProjectPage(); - //var page = new HomeXhsProjectPage(); CreatePage(page, guid); } } @@ -495,6 +1365,14 @@ //添加 private void tabbedView1_DocumentAdded(object sender, DocumentEventArgs e) { + if (this.tabbedView1.Documents.Count > 1) + { + if (!this.tabbedView1.DocumentGroupProperties.ShowTabHeader) + { + this.navBtnPrevious.Visible = true; + this.navBtnNext.Visible = true; + } + } } //激活 @@ -502,7 +1380,25 @@ { var page = e.Document.Control as DocumentPage; if (page == null) + { return; + } + this.navBtnCurrent.ImageOptions.SvgImage = page.PageTitle.HeaderSvgImage; + this.navBtnCurrent.Caption = page.PageTitle.Caption; + } + + //正在关闭Document + private void tabbedView1_DocumentClosing(object sender, DocumentCancelEventArgs e) + { + var page = e.Document.Control as DocumentPage; + if (page == null) + return; + if (!page.CanClose()) + { + e.Cancel = true; + return; + } + page.UnRegistEvents(); } //关闭 此时控件已经为空 @@ -666,6 +1562,15 @@ page.UpdatePageTitleEvent += UpdatePageTitle; page.ClosePageEvent += ClosePage; page.RegistEvents(); + var menuAtuhority = AuthHelper.GetFunctionPageAuth(pguid.Function); + if (menuAtuhority != null) + { + page.AuthTree = new PageAuthHaveTree + { + Permission = menuAtuhority.Permission, + Have = menuAtuhority.Have + }; + } switch (pguid.MoudingType) { case eMoudingType.Dock: @@ -719,8 +1624,19 @@ default: break; } page.InitialDataSource(); + page.VerifyAuth(); return true; } + + /* public PageAuthHaveTree GetPageAuthHave(string tag) + { + foreach (var item in AuthHelper.PageAuthHaveTreeList) + { + if (item.Permission == tag) + { + } + } + }*/ //关闭Page private void ClosePage(PageGuid pguid) @@ -768,11 +1684,11 @@ { //foreach (NavButton item in this.tileNavPane.Buttons) //{ - // if (item.Tag == null) + // if (item.TagName == null) // continue; - // if (item.Tag is int) + // if (item.TagName is int) // { - // if (((int)item.Tag) == (int)modular) + // if (((int)item.TagName) == (int)modular) // { // item.Appearance.BackColor = Color.FromArgb(255, 128, 0); // } @@ -783,7 +1699,7 @@ // } //} //this.docPnlFuncList.Text = modular.ToString(); - //this.funcTreeListCtrl1.SetBindingData(modular, surfaceGuid); + //this.funcTreeListCtrl1.SetMatching(modular, surfaceGuid); //if (surfaceGuid == null) //{ // var func = this.funcTreeListCtrl1.SetDefault(); @@ -793,5 +1709,35 @@ } #endregion Modular + + //上一页 + private void navBtnPrevious_ElementClick(object sender, NavElementEventArgs e) + { + this.tabbedView1.Controller.SelectNextTab(false); + } + + //下一页 + private void navBtnNext_ElementClick(object sender, NavElementEventArgs e) + { + this.tabbedView1.Controller.SelectNextTab(true); + } + + //模式切换 + private void navBtnPattern_ElementClick(object sender, NavElementEventArgs e) + { + if (this.tabbedView1.DocumentGroupProperties.ShowTabHeader) + { + this.navBtnPrevious.Visible = true; + this.navBtnCurrent.Visible = true; + this.navBtnNext.Visible = true; + } + else + { + this.navBtnPrevious.Visible = false; + this.navBtnCurrent.Visible = false; + this.navBtnNext.Visible = false; + } + this.tabbedView1.DocumentGroupProperties.ShowTabHeader = !this.tabbedView1.DocumentGroupProperties.ShowTabHeader; + } } } \ No newline at end of file -- Gitblit v1.9.3