rax-remote-2/upms/upms-biz/src/main/resources/mapper/SysRoleMapper.xml
2024-04-26 18:54:32 +08:00

69 lines
2.3 KiB
XML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<?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.rax.admin.mapper.SysRoleMapper">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.rax.admin.api.entity.SysRole">
<id column="role_id" property="roleId"/>
<result column="role_name" property="roleName"/>
<result column="role_code" property="roleCode"/>
<result column="role_desc" property="roleDesc"/>
<result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/>
<result column="del_flag" property="delFlag"/>
</resultMap>
<!-- 通过用户ID查询角色信息-->
<select id="listRolesByUserId" resultMap="BaseResultMap">
SELECT sys_role.role_id,
sys_role.role_name,
sys_role.role_code,
sys_role.role_desc,
sys_role.create_time,
sys_role.update_time,
sys_role.del_flag
FROM sys_role,
sys_user_role
WHERE sys_role.role_id = sys_user_role.role_id
AND sys_role.del_flag = '0'
and sys_user_role.user_id = #{userId}
</select>
<select id="getRoleTree" resultType="map">
select r.role_id "roleId",
r.role_name "roleName",
r.role_code "roleCode",
r.role_desc "roleDesc",
r.create_time "createTime",
r.update_time "updateTime",
GROUP_CONCAT(m.`name`) "menu"
from sys_role r
left join
sys_role_menu rm on r.role_id = rm.role_id
left join
sys_menu m on m.menu_id = rm.menu_id
where r.del_flag = 0
<if test="roleName != null and roleName != ''">
<bind name="bindName" value="'%' + roleName + '%'"/>
and r.role_name like #{bindName}
</if>
GROUP BY r.role_id
ORDER BY r.create_time desc
</select>
<select id="getTotal" resultType="integer">
select count(*)
from (select GROUP_CONCAT(m.`name`) as menu
from sys_role r
left join
sys_role_menu rm on r.role_id = rm.role_id
left join
sys_menu m on m.menu_id = rm.menu_id
where r.del_flag = 0
<if test="roleName != null and roleName != ''">
<bind name="bindName" value="'%' + roleName + '%'"/>
and r.role_name like #{bindName}
</if>
GROUP BY r.role_id) a
</select>
</mapper>