“mitao”
2026-03-26 72bc97968f1d7185c62affd893e97b8869471556
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package com.tcm.training.admin.user.mapper;
 
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
 
import java.util.List;
 
@Mapper
public interface RbacQueryMapper {
 
    @Select("SELECT DISTINCT r.role_code " +
            "FROM sys_role r " +
            "INNER JOIN sys_user_role ur ON ur.role_id = r.id " +
            "WHERE ur.user_id = #{userId} AND r.deleted = 0 AND r.status = 1")
    List<String> selectRoleCodesByUserId(@Param("userId") Long userId);
 
    @Select("SELECT DISTINCT m.permission_key " +
            "FROM sys_menu m " +
            "INNER JOIN sys_role_menu rm ON rm.menu_id = m.id " +
            "INNER JOIN sys_user_role ur ON ur.role_id = rm.role_id " +
            "INNER JOIN sys_role r ON r.id = ur.role_id " +
            "WHERE ur.user_id = #{userId} " +
            "AND m.deleted = 0 AND m.status = 1 " +
            "AND r.deleted = 0 AND r.status = 1 " +
            "AND m.permission_key IS NOT NULL AND m.permission_key <> ''")
    List<String> selectPermissionKeysByUserId(@Param("userId") Long userId);
}