From 2e6bb454f42a28f719e40abeeeb87e12b4efa93f Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期一, 16 三月 2020 09:58:40 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue --- ruoyi/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java | 66 +++++++++++++++++++++++++++++++++ 1 files changed, 66 insertions(+), 0 deletions(-) diff --git a/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java b/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java new file mode 100644 index 0000000..20a2a0b --- /dev/null +++ b/ruoyi/src/main/java/com/ruoyi/framework/security/service/SysPermissionService.java @@ -0,0 +1,66 @@ +package com.ruoyi.framework.security.service; + +import java.util.HashSet; +import java.util.Set; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; +import com.ruoyi.project.system.domain.SysUser; +import com.ruoyi.project.system.service.ISysMenuService; +import com.ruoyi.project.system.service.ISysRoleService; + +/** + * 鐢ㄦ埛鏉冮檺澶勭悊 + * + * @author ruoyi + */ +@Component +public class SysPermissionService +{ + @Autowired + private ISysRoleService roleService; + + @Autowired + private ISysMenuService menuService; + + /** + * 鑾峰彇瑙掕壊鏁版嵁鏉冮檺 + * + * @param user 鐢ㄦ埛淇℃伅 + * @return 瑙掕壊鏉冮檺淇℃伅 + */ + public Set<String> getRolePermission(SysUser user) + { + Set<String> roles = new HashSet<String>(); + // 绠$悊鍛樻嫢鏈夋墍鏈夋潈闄� + if (user.isAdmin()) + { + roles.add("admin"); + } + else + { + roles.addAll(roleService.selectRolePermissionByUserId(user.getUserId())); + } + return roles; + } + + /** + * 鑾峰彇鑿滃崟鏁版嵁鏉冮檺 + * + * @param user 鐢ㄦ埛淇℃伅 + * @return 鑿滃崟鏉冮檺淇℃伅 + */ + public Set<String> getMenuPermission(SysUser user) + { + Set<String> perms = new HashSet<String>(); + // 绠$悊鍛樻嫢鏈夋墍鏈夋潈闄� + if (user.isAdmin()) + { + perms.add("*:*:*"); + } + else + { + perms.addAll(menuService.selectMenuPermsByUserId(user.getUserId())); + } + return perms; + } +} -- Gitblit v1.9.3