78 lines
2.7 KiB
XML
78 lines
2.7 KiB
XML
<?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.nuaa.video.admin.mapper.AdminRoleMapper">
|
|
|
|
<!-- 分页查询角色列表 -->
|
|
<select id="selectRoleList" resultMap="roleMap">
|
|
SELECT
|
|
r.*,
|
|
p.id AS perm_id,
|
|
p.name AS perm_name,
|
|
p.code AS perm_code,
|
|
p.description AS perm_description
|
|
FROM
|
|
admin_role r
|
|
LEFT JOIN
|
|
admin_role_permission rp ON r.id = rp.role_id
|
|
LEFT JOIN
|
|
admin_permission p ON rp.permission_id = p.id
|
|
<where>
|
|
<if test="keyword != null and keyword != ''">
|
|
AND (r.name LIKE CONCAT('%', #{keyword}, '%')
|
|
OR r.code LIKE CONCAT('%', #{keyword}, '%')
|
|
OR r.description LIKE CONCAT('%', #{keyword}, '%'))
|
|
</if>
|
|
</where>
|
|
ORDER BY r.id ASC
|
|
</select>
|
|
|
|
<!-- 获取角色详情 -->
|
|
<select id="selectRoleDetail" resultMap="roleMap">
|
|
SELECT
|
|
r.*,
|
|
p.id AS perm_id,
|
|
p.name AS perm_name,
|
|
p.code AS perm_code,
|
|
p.description AS perm_description
|
|
FROM
|
|
admin_role r
|
|
LEFT JOIN
|
|
admin_role_permission rp ON r.id = rp.role_id
|
|
LEFT JOIN
|
|
admin_permission p ON rp.permission_id = p.id
|
|
WHERE
|
|
r.id = #{id}
|
|
</select>
|
|
|
|
<!-- 获取管理员的角色列表 -->
|
|
<select id="selectRolesByAdminId" resultType="com.nuaa.video.admin.entity.AdminRole">
|
|
SELECT
|
|
r.*
|
|
FROM
|
|
admin_role r
|
|
INNER JOIN
|
|
admin_user_role ur ON r.id = ur.role_id
|
|
WHERE
|
|
ur.admin_id = #{adminId}
|
|
</select>
|
|
|
|
<!-- 结果映射 -->
|
|
<resultMap id="roleMap" type="com.nuaa.video.admin.entity.AdminRole">
|
|
<id property="id" column="id"/>
|
|
<result property="name" column="name"/>
|
|
<result property="code" column="code"/>
|
|
<result property="description" column="description"/>
|
|
<result property="createdBy" column="created_by"/>
|
|
<result property="updatedBy" column="updated_by"/>
|
|
<result property="createTime" column="create_time"/>
|
|
<result property="updateTime" column="update_time"/>
|
|
|
|
<!-- 权限集合 -->
|
|
<collection property="permissions" ofType="com.nuaa.video.admin.entity.AdminPermission">
|
|
<id property="id" column="perm_id"/>
|
|
<result property="name" column="perm_name"/>
|
|
<result property="code" column="perm_code"/>
|
|
<result property="description" column="perm_description"/>
|
|
</collection>
|
|
</resultMap>
|
|
</mapper> |