优化多角色数据权限匹配规则
This commit is contained in:
		| @@ -34,6 +34,14 @@ public interface SysMenuMapper | ||||
|      */ | ||||
|     public List<SysMenu> selectMenuListByUserId(SysMenu menu); | ||||
|  | ||||
|     /** | ||||
|      * 根据角色ID查询权限 | ||||
|      *  | ||||
|      * @param roleId 角色ID | ||||
|      * @return 权限列表 | ||||
|      */ | ||||
|     public List<String> selectMenuPermsByRoleId(Long roleId); | ||||
|  | ||||
|     /** | ||||
|      * 根据用户ID查询权限 | ||||
|      * | ||||
|   | ||||
| @@ -19,6 +19,14 @@ public interface ISysDeptService | ||||
|      */ | ||||
|     public List<SysDept> selectDeptList(SysDept dept); | ||||
|  | ||||
|     /** | ||||
|      * 查询部门树结构信息 | ||||
|      *  | ||||
|      * @param dept 部门信息 | ||||
|      * @return 部门树信息集合 | ||||
|      */ | ||||
|     public List<TreeSelect> selectDeptTreeList(SysDept dept); | ||||
|  | ||||
|     /** | ||||
|      * 构建前端所需要树结构 | ||||
|      *  | ||||
|   | ||||
| @@ -38,6 +38,14 @@ public interface ISysMenuService | ||||
|      */ | ||||
|     public Set<String> selectMenuPermsByUserId(Long userId); | ||||
|  | ||||
|     /** | ||||
|      * 根据角色ID查询权限 | ||||
|      *  | ||||
|      * @param roleId 角色ID | ||||
|      * @return 权限列表 | ||||
|      */ | ||||
|     public Set<String> selectMenuPermsByRoleId(Long roleId); | ||||
|  | ||||
|     /** | ||||
|      * 根据用户ID查询菜单树信息 | ||||
|      *  | ||||
|   | ||||
| @@ -48,6 +48,19 @@ public class SysDeptServiceImpl implements ISysDeptService | ||||
|         return deptMapper.selectDeptList(dept); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 查询部门树结构信息 | ||||
|      *  | ||||
|      * @param dept 部门信息 | ||||
|      * @return 部门树信息集合 | ||||
|      */ | ||||
|     @Override | ||||
|     public List<TreeSelect> selectDeptTreeList(SysDept dept) | ||||
|     { | ||||
|         List<SysDept> depts = SpringUtils.getAopProxy(this).selectDeptList(dept); | ||||
|         return buildDeptTreeSelect(depts); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 构建前端所需要树结构 | ||||
|      *  | ||||
|   | ||||
| @@ -100,6 +100,27 @@ public class SysMenuServiceImpl implements ISysMenuService | ||||
|         return permsSet; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 根据角色ID查询权限 | ||||
|      *  | ||||
|      * @param roleId 角色ID | ||||
|      * @return 权限列表 | ||||
|      */ | ||||
|     @Override | ||||
|     public Set<String> selectMenuPermsByRoleId(Long roleId) | ||||
|     { | ||||
|         List<String> perms = menuMapper.selectMenuPermsByRoleId(roleId); | ||||
|         Set<String> permsSet = new HashSet<>(); | ||||
|         for (String perm : perms) | ||||
|         { | ||||
|             if (StringUtils.isNotEmpty(perm)) | ||||
|             { | ||||
|                 permsSet.addAll(Arrays.asList(perm.trim().split(","))); | ||||
|             } | ||||
|         } | ||||
|         return permsSet; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * 根据用户ID查询菜单 | ||||
|      *  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user