tsurumure il y a 10 mois
Parent
commit
3b8101ac2e

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

@@ -0,0 +1,13 @@
+package com.backendsys.modules.system.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface SysUserRoleModuleRelationDao extends BaseMapper<SysUserRoleModuleRelationDao> {
+
+    List<Long> selectUserRoleModuleIdsByRoleIds(List<Long> role_ids);
+
+}

+ 5 - 0
src/main/java/com/backendsys/modules/system/dao/SysUserRoleRelationDao.java

@@ -4,6 +4,11 @@ import com.backendsys.modules.system.entity.SysUser.SysUserRoleRelation;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 @Mapper
 public interface SysUserRoleRelationDao extends BaseMapper<SysUserRoleRelation> {
+
+    List<Long> selectUserRoleIds(Long user_id);
+
 }

+ 15 - 0
src/main/java/com/backendsys/modules/system/entity/SysUser/SysUserRoleModuleRelation.java

@@ -0,0 +1,15 @@
+package com.backendsys.modules.system.entity.SysUser;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("sys_user_role_module_relation")
+public class SysUserRoleModuleRelation {
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    private Long role_id;
+    private Long module_id;
+}

+ 0 - 3
src/main/java/com/backendsys/modules/system/entity/SysUser/SysUserRoleRelation.java

@@ -9,11 +9,8 @@ import lombok.Data;
 @Data
 @TableName("sys_user_role_relation")
 public class SysUserRoleRelation {
-
     @TableId(type = IdType.AUTO)
     private Long id;
-
     private Long user_id;
     private Long role_id;
-
 }

+ 15 - 12
src/main/java/com/backendsys/modules/system/service/impl/SysUserV2ServiceImpl.java

@@ -1,9 +1,6 @@
 package com.backendsys.modules.system.service.impl;
 
-import com.backendsys.modules.system.dao.SysUserDao;
-import com.backendsys.modules.system.dao.SysUserInfoDao;
-import com.backendsys.modules.system.dao.SysUserRoleDao;
-import com.backendsys.modules.system.dao.SysUserRoleRelationDao;
+import com.backendsys.modules.system.dao.*;
 import com.backendsys.modules.system.entity.SysUser.SysUser;
 import com.backendsys.modules.system.entity.SysUser.SysUserInfo;
 import com.backendsys.modules.system.entity.SysUser.SysUserRole;
@@ -15,6 +12,7 @@ import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
 import java.util.Objects;
 import java.util.stream.Collectors;
@@ -30,6 +28,8 @@ public class SysUserV2ServiceImpl extends ServiceImpl<SysUserDao, SysUser> imple
     private SysUserRoleDao sysUserRoleDao;
     @Autowired
     private SysUserRoleRelationDao sysUserRoleRelationDao;
+    @Autowired
+    private SysUserRoleModuleRelationDao sysUserRoleModuleRelationDao;
 
     /**
      * 获得系统用户详情
@@ -61,15 +61,18 @@ public class SysUserV2ServiceImpl extends ServiceImpl<SysUserDao, SysUser> imple
     @Override
     public List<Long> selectUserModule(Long user_id) {
 
-        // 获得当前角色关系
-        QueryWrapper<SysUserRoleRelation> wrapper = new QueryWrapper<>();
-        wrapper.eq("user_id", user_id);
-        List<SysUserRoleRelation> userRoleList = sysUserRoleRelationDao.selectList(wrapper);
-        List<Long> userRoleIds = userRoleList.stream().map(SysUserRoleRelation::getRole_id).collect(Collectors.toList());
-        System.out.println("userRoleIds = " + userRoleIds);
-        
+        // 获得当前角色关系(集合)
+        List<Long> user_role_ids = sysUserRoleRelationDao.selectUserRoleIds(user_id);
+        System.out.println("user_role_ids = " + user_role_ids);
+
+        // 获得当前角色关系(集合) 所对应的权限(集合)
+        List<Long> role_module_ids = new ArrayList<>();
+        if (user_role_ids.size() > 0) {
+             role_module_ids = sysUserRoleModuleRelationDao.selectUserRoleModuleIdsByRoleIds(user_role_ids);
+            System.out.println("role_module_ids = " + role_module_ids);
+        }
 
-        return null;
+        return role_module_ids;
     }
 
 

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

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.backendsys.modules.system.dao.SysUserModuleDao">
-
-<!--    <select id="selectUserModule" resultType="com.backendsys.modules.system.entity.SysUser.SysUserRole">-->
-<!--        SELECT *-->
-<!--        FROM sys_user_role_relation surr-->
-<!--        LEFT JOIN sys_user_role sur ON sur.id = sumr.role_id-->
-<!--        LEFT JOIN sys_user_module_relation ON su.id = sumr.role_id-->
-<!--        WHERE surr.user_id = #{user_id}-->
-<!--    </select>-->
-
-</mapper>

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

@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.backendsys.modules.system.dao.SysUserRoleModuleRelationDao">
+
+    <select id="selectUserRoleModuleIdsByRoleIds" resultType="java.lang.Long">
+        SELECT module_id
+        FROM sys_user_role_module_relation
+        WHERE role_id IN
+        <foreach item="role_id" index="index" collection="role_ids" open="(" separator="," close=")">
+            #{role_id}
+        </foreach>
+    </select>
+
+</mapper>

+ 11 - 0
src/main/resources/mapper/system/SysUserRoleRelationDao.xml

@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.backendsys.modules.system.dao.SysUserRoleRelationDao">
+
+    <select id="selectUserRoleIds" resultType="java.lang.Long">
+        SELECT role_id
+        FROM sys_user_role_relation
+        WHERE user_id = #{user_id}
+    </select>
+
+</mapper>