103 lines
3.9 KiB
XML
103 lines
3.9 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.cool.store.mapper.EnterpriseUserRoleMapper">
|
|
<resultMap id="BaseResultMap" type="com.cool.store.entity.EnterpriseUserRoleDO">
|
|
<id column="id" jdbcType="INTEGER" property="id"/>
|
|
<result column="role_id" jdbcType="BIGINT" property="roleId"/>
|
|
<result column="user_id" jdbcType="VARCHAR" property="userId"/>
|
|
<result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
|
|
<result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
|
|
</resultMap>
|
|
<sql id="Base_Column_List">
|
|
id, role_id, user_id, create_time, update_time
|
|
</sql>
|
|
<insert id="insertSelective" keyColumn="id" keyProperty="record.id" useGeneratedKeys="true">
|
|
insert into enterprise_user_role_${enterpriseId}
|
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
|
<if test="record.roleId != null">
|
|
role_id,
|
|
</if>
|
|
<if test="record.userId != null">
|
|
user_id,
|
|
</if>
|
|
<if test="record.createTime != null">
|
|
create_time,
|
|
</if>
|
|
<if test="record.updateTime != null">
|
|
update_time,
|
|
</if>
|
|
</trim>
|
|
<trim prefix="values (" suffix=")" suffixOverrides=",">
|
|
<if test="record.roleId != null">
|
|
#{record.roleId},
|
|
</if>
|
|
<if test="record.userId != null">
|
|
#{record.userId},
|
|
</if>
|
|
<if test="record.createTime != null">
|
|
#{record.createTime},
|
|
</if>
|
|
<if test="record.updateTime != null">
|
|
#{record.updateTime},
|
|
</if>
|
|
</trim>
|
|
</insert>
|
|
<update id="updateByPrimaryKeySelective">
|
|
update enterprise_user_role_${enterpriseId}
|
|
<set>
|
|
<if test="record.roleId != null">
|
|
role_id = #{record.roleId},
|
|
</if>
|
|
<if test="record.userId != null">
|
|
user_id = #{record.userId},
|
|
</if>
|
|
<if test="record.createTime != null">
|
|
create_time = #{record.createTime},
|
|
</if>
|
|
<if test="record.updateTime != null">
|
|
update_time = #{record.updateTime},
|
|
</if>
|
|
</set>
|
|
where id = #{record.id}
|
|
</update>
|
|
|
|
<insert id="insertBatchUserRole">
|
|
insert ignore into enterprise_user_role_${eid}
|
|
(role_id, user_id ,create_time)
|
|
values
|
|
<foreach collection="userRoles" item="userRole" separator=",">
|
|
(#{userRole.roleId}, #{userRole.userId} ,#{userRole.createTime})
|
|
</foreach>
|
|
</insert>
|
|
|
|
<select id="getUserAndRolesByUserId" resultType="com.cool.store.dto.buser.UserRoleDTO">
|
|
select
|
|
a.role_id as roleId,
|
|
a.user_id as userId,
|
|
b.role_name as roleName,
|
|
b.role_auth as roleAuth,
|
|
b.role_enum as roleEnum,
|
|
b.priority as priority
|
|
from enterprise_user_role_${eip} a left join sys_role_${eip} b on a.role_id=b.id
|
|
<where>
|
|
<if test="userIdList != null and userIdList.size>0">
|
|
<foreach collection="userIdList" item="userId" separator="," open="a.user_id in (" close=")">
|
|
#{userId}
|
|
</foreach>
|
|
</if>
|
|
AND b.role_name IS NOT NULL
|
|
</where>
|
|
</select>
|
|
|
|
<select id="listRoleByUserId" resultType="com.cool.store.entity.SysRoleDO">
|
|
select
|
|
c.id as id,
|
|
c.role_name as roleName,
|
|
c.role_auth as roleAuth,
|
|
c.source as source,
|
|
c.role_enum as roleEnum
|
|
from enterprise_user_role_${eip} b
|
|
left join sys_role_${eip} c on c.id = b.role_id
|
|
where b.user_id = #{userId}
|
|
</select>
|
|
</mapper> |