From 681d093f9ea16ab2d480d77e6b04b197e506ff60 Mon Sep 17 00:00:00 2001 From: dengjunjie <dengjunjie@hnkhzn.com> Date: 星期四, 19 六月 2025 01:29:12 +0800 Subject: [PATCH] 1 --- 代码管理/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs | 46 +++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 45 insertions(+), 1 deletions(-) diff --git "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" index 3372776..3092a7b 100644 --- "a/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" +++ "b/\344\273\243\347\240\201\347\256\241\347\220\206/WMS/WIDESEA_WMSServer/WIDESEA_SystemService/Sys_RoleService.cs" @@ -122,6 +122,50 @@ }); return WebResponseContent.Instance.OK(null, data); } + public WebResponseContent GetCurrentTreePermissionPDA() + { + WebResponseContent content = GetCurrentUserTreePermissionPDA(); + int roleId = App.User.RoleId; + return WebResponseContent.Instance.OK(null, new + { + tree = content.Data, + roles = GetAllChildren(roleId) + }); + } + + /// <summary> + /// 缂栬緫鏉冮檺鏃讹紝鑾峰彇褰撳墠鐢ㄦ埛鐨勬墍鏈夎彍鍗曟潈闄� + /// </summary> + /// <returns></returns> + public WebResponseContent GetCurrentUserTreePermissionPDA() + { + return GetUserTreePermissionPDA(App.User.RoleId); + } + public WebResponseContent GetUserTreePermissionPDA(int roleId) + { + if (!App.User.IsRoleIdSuperAdmin(roleId) && App.User.RoleId != roleId) + { + if (!(GetAllChildren(App.User.RoleId)).Exists(x => x.Id == roleId)) + { + return WebResponseContent.Instance.Error("娌℃湁鏉冮檺鑾峰彇姝よ鑹茬殑鏉冮檺淇℃伅"); + } + } + //鑾峰彇鐢ㄦ埛鏉冮檺 + List<Permissions> permissions = _MenuRepository.GetPermissions(roleId); + //鏉冮檺鐢ㄦ埛鏉冮檺鏌ヨ鎵�鏈夌殑鑿滃崟淇℃伅 + List<MenuDTO> menus = _MenuService.GetUserMenuListPDA(roleId); + + //鑾峰彇褰撳墠鐢ㄦ埛鏉冮檺濡�:(Add,Search)瀵瑰簲鐨勬樉绀烘枃鏈俊鎭:Add锛氭坊鍔狅紝Search:鏌ヨ + var data = menus.Where(x => x.MenuType==1).Select(x => new + { + Id = x.MenuId, + Pid = x.ParentId, + Text = x.MenuName, + IsApp = x.MenuType == 1, + Actions = _MenuService.GetActions(x.MenuId, x.Actions, permissions, roleId) + }); + return WebResponseContent.Instance.OK(null, data); + } /// <summary> /// 淇濆瓨瑙掕壊鏉冮檺 @@ -195,7 +239,7 @@ x.AuthValue = ""; }); //灏嗗彇娑堢殑鏉冮檺璁剧疆涓�"" - _RoleAuthRepository.UpdateData(delAuths); + _RoleAuthRepository.DeleteData(delAuths); int addCount = updateAuths.Where(x => x.AuthId <= 0).Count(); int updateCount = updateAuths.Where(x => x.AuthId > 0).Count(); -- Gitblit v1.9.3