From 508882d21eda8696400aa27346398422db9b8e3d Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期一, 17 七月 2023 14:25:41 +0800
Subject: [PATCH] update 优化 角色权限支持仅本人权限查看 解决无法查看自己创建的角色问题

---
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml         |    8 +++++++-
 ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java |    9 ++++++---
 2 files changed, 13 insertions(+), 4 deletions(-)

diff --git a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java
index a0a29b1..55ca769 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/SysRoleMapper.java
@@ -20,7 +20,8 @@
 public interface SysRoleMapper extends BaseMapperPlus<SysRole, SysRoleVo> {
 
     @DataPermission({
-        @DataColumn(key = "deptName", value = "d.dept_id")
+        @DataColumn(key = "deptName", value = "d.dept_id"),
+        @DataColumn(key = "userName", value = "r.create_by")
     })
     Page<SysRoleVo> selectPageRoleList(@Param("page") Page<SysRole> page, @Param(Constants.WRAPPER) Wrapper<SysRole> queryWrapper);
 
@@ -31,12 +32,14 @@
      * @return 瑙掕壊鏁版嵁闆嗗悎淇℃伅
      */
     @DataPermission({
-        @DataColumn(key = "deptName", value = "d.dept_id")
+        @DataColumn(key = "deptName", value = "d.dept_id"),
+        @DataColumn(key = "userName", value = "r.create_by")
     })
     List<SysRoleVo> selectRoleList(@Param(Constants.WRAPPER) Wrapper<SysRole> queryWrapper);
 
     @DataPermission({
-        @DataColumn(key = "deptName", value = "d.dept_id")
+        @DataColumn(key = "deptName", value = "d.dept_id"),
+        @DataColumn(key = "userName", value = "r.create_by")
     })
     SysRoleVo selectRoleById(Long roleId);
 
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml
index d482f39..480df49 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMapper.xml
@@ -49,7 +49,13 @@
     </select>
 
     <select id="selectRolesByUserName" parameterType="String" resultMap="SysRoleResult">
-        <include refid="selectRoleVo"/>
+        select r.role_id,
+               r.role_name,
+               r.role_key,
+               r.role_sort,
+        from sys_role r
+                 left join sys_user_role sur on sur.role_id = r.role_id
+                 left join sys_user u on u.user_id = sur.user_id
         WHERE r.del_flag = '0' and u.user_name = #{userName}
     </select>
 

--
Gitblit v1.9.3