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 |  200 ++++++++++++++++++++++---------------------------
 1 files changed, 91 insertions(+), 109 deletions(-)

diff --git a/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs b/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs
index 55c2bea..73f6ed2 100644
--- a/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs
+++ b/Desktop/HStation.Desktop.Xhs.Core/MainForm.cs
@@ -20,6 +20,7 @@
         public MainForm()
         {
             InitializeComponent();
+            this.IconOptions.Icon = Yw.WinFrmUI.GlobalParas.AppIcon;
         }
 
         //验证权限
@@ -213,7 +214,7 @@
                 _modelItem = CreateHydroPeekList();
                 if (e.Element.Tag == null)
                     return;
-                SetMenuAuth(e.Element.Tag.ToString());
+                SetMenuAuth(e.Element.Tag.ToString(), _modelItem);
                 _bimfaceMgrBeakCtrl = _modelItem.CreatePeekCtrl(ClickTilePeekItem);
                 this.flyoutPanel1.Size = _bimfaceMgrBeakCtrl.Size;
                 this.flyoutPanelControl1.Controls.Clear();
@@ -239,7 +240,10 @@
             {
                 if (_assetsMgrCtrl == null)
                 {
+                    if (e.Element.Tag == null)
+                        return;
                     var peekItemList = CreateAssetsPeekList();
+                    SetMenuAuth(e.Element.Tag.ToString(), peekItemList);
                     _assetsMgrCtrl = peekItemList.CreatePeekCtrl(ClickTilePeekItem);
                 }
                 this.flyoutPanel1.Size = _assetsMgrCtrl.Size;
@@ -261,16 +265,16 @@
             {
                 if (_SystemConfigCtrl == null)
                 {
+                    if (e.Element.Tag == null)
+                        return;
                     var peekItemList = CreateBasicPeekList();
+                    SetMenuAuth(e.Element.Tag.ToString(), peekItemList);
                     _SystemConfigCtrl = peekItemList.CreatePeekCtrl(ClickTilePeekItem);
                 }
                 this.flyoutPanel1.Size = _SystemConfigCtrl.Size;
                 this.flyoutPanelControl1.Controls.Clear();
                 this.flyoutPanelControl1.Controls.Add(_SystemConfigCtrl);
                 var rectangle = this.RectangleToScreen(hitInfo.ButtonInfo.Bounds);
-                /* if (e.Element.Tag == null)
-                     return;
-                 SetMenuAuth(e.Element.Tag.ToString());*/
                 this.flyoutPanel1.ShowBeakForm(rectangle);
             }
         }
@@ -288,101 +292,10 @@
             {
                 if (_AuthConfigCtrl == null)
                 {
-                    /*        var peakItemList = new List<Yw.WinFrmUI.TilePeekItem>()
-                            {
-                                new TilePeekItem(){
-                                    Caption="角色管理",
-                                    SvgImage=svgImg32Model[21],
-                                    SvgImageSize=new Size(24,24),
-                                    Click=()=>{
-                                        this.flyoutPanel1.HideBeakForm();
-                                        var guid=new PageGuid(){
-                                            Modular="Auth",
-                                            MoudingType=eMoudingType.Tab,
-                                            Function="RoleManageMgr",
-                                        };
-                                        if(!IsExistPage(guid,true))
-                                        {
-                                            var page=new RoleMgrPage();
-                                            CreatePage(page,guid);
-                                        }
-                                    }
-                                },
-                                new TilePeekItem(){
-                                    Caption="用户管理",
-                                    SvgImage=svgImg32Model[22],
-                                    SvgImageSize=new Size(24,24),
-                                    Click=()=>{
-                                        this.flyoutPanel1.HideBeakForm();
-                                        var guid=new PageGuid(){
-                                            Modular="Auth",
-                                            MoudingType=eMoudingType.Tab,
-                                            Function="UserMgr",
-                                        };
-                                        if(!IsExistPage(guid,true))
-                                        {
-                                            var page=new UserMgrPage();
-                                            CreatePage(page,guid);
-                                        }
-                                    }
-                                },
-                                new TilePeekItem(){
-                                    Caption="菜单管理",
-                                    SvgImage=svgImg32Model[23],
-                                    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 MenuMgrPage();
-                                            CreatePage(page,guid);
-                                        }
-                                    }
-                                },   *//*new TilePeekItem(){
-                                    Caption="测试导出",
-                                    SvgImage=svgImg32Model[2],
-                                    SvgImageSize=new Size(24,24),
-                                    Click=()=>{
-                                        this.flyoutPanel1.HideBeakForm();
-                                        var guid=new PageGuid(){
-                                            Modular="test",
-                                            MoudingType=eMoudingType.Tab,
-                                            Function="test",
-                                        };
-                                        if(!IsExistPage(guid,true))
-                                        {
-                                            var page=new test();
-                                            CreatePage(page,guid);
-                                        }
-                                    }
-                                },*//*
-                                 new TilePeekItem(){
-                                    Caption="角色菜单",
-                                    SvgImage=svgImg32Model[24],
-                                    SvgImageSize=new Size(24,24),
-                                    Click=()=>{
-                                        this.flyoutPanel1.HideBeakForm();
-                                        var guid=new PageGuid(){
-                                            Modular="Auth",
-                                            MoudingType=eMoudingType.Tab,
-                                            Function="RoleMenu",
-                                        };
-                                        if(!IsExistPage(guid,true))
-                                        {
-                                            var page=new RoleProjectMenuPage();
-                                            CreatePage(page,guid);
-                                        }
-                                    }
-                                },
-                                };
-                            _AuthConfigCtrl = peakItemList.CreatePeekCtrl();*/
-
                     var peekItemList = CreateAuthPeekList();
+                    if (e.Element.Tag == null)
+                        return;
+                    SetMenuAuth(e.Element.Tag.ToString(), peekItemList);
                     _AuthConfigCtrl = peekItemList.CreatePeekCtrl(ClickTilePeekItem);
                 }
                 this.flyoutPanel1.Size = _AuthConfigCtrl.Size;
@@ -393,7 +306,7 @@
             }
         }
 
-        private void SetMenuAuth(string tag_str)
+        private void SetMenuAuth(string tag_str, List<TilePeekItem> tilePeekItem)
         {
             if (string.IsNullOrEmpty(tag_str))
                 return;
@@ -402,17 +315,27 @@
                 return;
 
             var page_child_list = pageAuth.Children?.Where(x => x.Type == 2).ToList();
-            if (page_child_list != null || page_child_list.Count > 1)
+            if (page_child_list != null && page_child_list.Count > 0)
             {
                 foreach (var menu in page_child_list)
                 {
-                    foreach (var item in _modelItem)
-                    {
-                        if (menu.Permission == item.Tag.ToString())
-                        {
-                            item.Visibility = menu.Have;
-                        }
-                    }
+                    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);
                 }
             }
         }
@@ -543,6 +466,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;
         }
 
@@ -941,7 +882,6 @@
                         if (!IsExistPage(guid, true))
                         {
                             var page = new AssetsCoolingMgrPage();
-                            //   page.AuthTree=
                             CreatePage(page, guid);
                         }
                     }
@@ -1165,6 +1105,40 @@
                         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);
                         }
                     }
@@ -1588,7 +1562,15 @@
             page.UpdatePageTitleEvent += UpdatePageTitle;
             page.ClosePageEvent += ClosePage;
             page.RegistEvents();
-            //   page.AuthTree = AuthHelper.GetRootPageAuth(tag);
+            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:

--
Gitblit v1.9.3