Bladeren bron

Fix getUserRoleDetail

tsurumure 8 maanden geleden
bovenliggende
commit
d2ebebf87b

+ 3 - 0
src/main/java/com/backendsys/modules/system/dao/SysUserRoleModuleRelationDao.java

@@ -1,5 +1,6 @@
 package com.backendsys.modules.system.dao;
 
+import com.backendsys.modules.system.entity.SysUserRoleModule;
 import com.backendsys.modules.system.entity.SysUserRoleModuleRelation;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
@@ -11,4 +12,6 @@ public interface SysUserRoleModuleRelationDao extends BaseMapper<SysUserRoleModu
 
     List<String> selectUserRoleModuleIdsByRoleIds(List<Long> role_ids);
 
+    List<SysUserRoleModule> selectUserRoleModuleByRoleId(Long role_id);
+
 }

+ 6 - 0
src/main/java/com/backendsys/modules/system/entity/SysUserRole.java

@@ -6,6 +6,9 @@ import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
 
+import java.util.List;
+import java.util.Map;
+
 @Data
 @TableName("sys_user_role")
 public class SysUserRole {
@@ -21,4 +24,7 @@ public class SysUserRole {
 
     private Integer sort;
     private Integer status;
+
+    @TableField(exist = false)
+    private List<SysUserRoleModule> modules;
 }

+ 10 - 0
src/main/java/com/backendsys/modules/system/service/impl/SysUserRoleV2ServiceImpl.java

@@ -8,6 +8,7 @@ import com.backendsys.modules.system.dao.SysUserRoleDao;
 import com.backendsys.modules.system.dao.SysUserRoleModuleRelationDao;
 import com.backendsys.modules.system.dao.SysUserRoleRelationDao;
 import com.backendsys.modules.system.entity.SysUserRole;
+import com.backendsys.modules.system.entity.SysUserRoleModule;
 import com.backendsys.modules.system.entity.SysUserRoleModuleRelation;
 import com.backendsys.modules.system.entity.SysUserRoleRelation;
 import com.backendsys.modules.system.service.SysUserRoleV2Service;
@@ -15,6 +16,7 @@ import com.backendsys.utils.response.PageEntity;
 import com.backendsys.utils.response.PageInfoResult;
 import com.backendsys.utils.v2.PageUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -51,6 +53,14 @@ public class SysUserRoleV2ServiceImpl extends ServiceImpl<SysUserRoleDao, SysUse
         Long count = sysUserRoleRelationDao.selectCount(queryWrapper);
         roleDetail.setUser_count(Convert.toInt(count));
 
+        // 查询角色对应的模块
+        List<SysUserRoleModule> modules = sysUserRoleModuleRelationDao.selectUserRoleModuleByRoleId(role_id);
+
+        System.out.println("modules:");
+        System.out.println(modules);
+
+        roleDetail.setModules(modules);
+
         return roleDetail;
     }
 

+ 13 - 0
src/main/resources/mapper/system/SysUserRoleModuleRelationDao.xml

@@ -11,4 +11,17 @@
         </foreach>
     </select>
 
+    <resultMap id="resultMapRoleModule" type="java.util.LinkedHashMap">
+        <result property="id" column="id"/>
+        <result property="parent_id" column="parent_id"/>
+        <result property="module_name" column="module_name" />
+    </resultMap>
+    <select id="selectUserRoleModuleByRoleId" resultMap="resultMapRoleModule">
+        SELECT surm.id, surm.parent_id, surm.module_name
+        FROM sys_user_role_module_relation surmr
+        LEFT JOIN sys_user_role_module surm ON surm.id = surmr.module_id
+        WHERE surmr.role_id = #{role_id}
+    </select>
+
+
 </mapper>