FrontRoleMapper.xml 6.9 KB
<?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.lhcredit.project.business.frontRole.mapper.FrontRoleMapper">
    
    <resultMap type="FrontRole" id="FrontRoleResult">
        <result property="roleId"    column="role_id"    />
        <result property="roleName"    column="role_name"    />
        <result property="roleKey"    column="role_key"    />
        <result property="roleSort"    column="role_sort"    />
        <result property="dataScope"    column="data_scope"    />
        <result property="status"    column="status"    />
        <result property="delFlag"    column="del_flag"    />
        <result property="createBy"    column="create_by"    />
        <result property="createTime"    column="create_time"    />
        <result property="updateBy"    column="update_by"    />
        <result property="updateTime"    column="update_time"    />
        <result property="remark"    column="remark"    />
    </resultMap>
	
	<sql id="selectFrontRoleVo">
        select role_id, role_name, role_key, role_sort, data_scope, status, del_flag, create_by, create_time, update_by, update_time, remark from front_role
    </sql>
	
    <select id="selectFrontRoleList" parameterType="FrontRole" resultMap="FrontRoleResult">
        <include refid="selectFrontRoleVo"/>
        <where>  
            <if test="roleId != null "> and role_id = #{roleId}</if>
            <if test="roleName != null  and roleName != '' "> and role_name = #{roleName}</if>
            <if test="roleKey != null  and roleKey != '' "> and role_key = #{roleKey}</if>
            <if test="roleSort != null "> and role_sort = #{roleSort}</if>
            <if test="dataScope != null  and dataScope != '' "> and data_scope = #{dataScope}</if>
            <if test="status != null  and status != '' "> and status = #{status}</if>
            <if test="delFlag != null  and delFlag != '' "> and del_flag = #{delFlag}</if>
            <if test="createBy != null  and createBy != '' "> and create_by = #{createBy}</if>
            <if test="createTime != null "> and create_time = #{createTime}</if>
            <if test="updateBy != null  and updateBy != '' "> and update_by = #{updateBy}</if>
            <if test="updateTime != null "> and update_time = #{updateTime}</if>
            <if test="remark != null  and remark != '' "> and remark = #{remark}</if>
        </where>
    </select>
    
    <select id="selectFrontRoleById" parameterType="Long" resultMap="FrontRoleResult">
        <include refid="selectFrontRoleVo"/>
        where role_id = #{roleId}
    </select>
        
    <insert id="insertFrontRole" parameterType="FrontRole" useGeneratedKeys="true" keyProperty="roleId">
        insert into front_role
		<trim prefix="(" suffix=")" suffixOverrides=",">
			<if test="roleName != null  and roleName != ''  ">role_name,</if>
			<if test="roleKey != null  and roleKey != ''  ">role_key,</if>
			<if test="roleSort != null  ">role_sort,</if>
			<if test="dataScope != null  and dataScope != ''  ">data_scope,</if>
			<if test="status != null  and status != ''  ">status,</if>
			<if test="delFlag != null  and delFlag != ''  ">del_flag,</if>
			<if test="createBy != null  and createBy != ''  ">create_by,</if>
			<if test="createTime != null  ">create_time,</if>
			<if test="updateBy != null  and updateBy != ''  ">update_by,</if>
			<if test="updateTime != null  ">update_time,</if>
			<if test="remark != null  and remark != ''  ">remark,</if>
         </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
			<if test="roleName != null  and roleName != ''  ">#{roleName},</if>
			<if test="roleKey != null  and roleKey != ''  ">#{roleKey},</if>
			<if test="roleSort != null  ">#{roleSort},</if>
			<if test="dataScope != null  and dataScope != ''  ">#{dataScope},</if>
			<if test="status != null  and status != ''  ">#{status},</if>
			<if test="delFlag != null  and delFlag != ''  ">#{delFlag},</if>
			<if test="createBy != null  and createBy != ''  ">#{createBy},</if>
			<if test="createTime != null  ">#{createTime},</if>
			<if test="updateBy != null  and updateBy != ''  ">#{updateBy},</if>
			<if test="updateTime != null  ">#{updateTime},</if>
			<if test="remark != null  and remark != ''  ">#{remark},</if>
         </trim>
    </insert>
	 
    <update id="updateFrontRole" parameterType="FrontRole">
        update front_role
        <trim prefix="SET" suffixOverrides=",">
            <if test="roleName != null  and roleName != ''  ">role_name = #{roleName},</if>
            <if test="roleKey != null  and roleKey != ''  ">role_key = #{roleKey},</if>
            <if test="roleSort != null  ">role_sort = #{roleSort},</if>
            <if test="dataScope != null  and dataScope != ''  ">data_scope = #{dataScope},</if>
            <if test="status != null  and status != ''  ">status = #{status},</if>
            <if test="delFlag != null  and delFlag != ''  ">del_flag = #{delFlag},</if>
            <if test="createBy != null  and createBy != ''  ">create_by = #{createBy},</if>
            <if test="createTime != null  ">create_time = #{createTime},</if>
            <if test="updateBy != null  and updateBy != ''  ">update_by = #{updateBy},</if>
            <if test="updateTime != null  ">update_time = #{updateTime},</if>
            <if test="remark != null  and remark != ''  ">remark = #{remark},</if>
        </trim>
        where role_id = #{roleId}
    </update>

	<delete id="deleteFrontRoleById" parameterType="Long">
        delete from front_role where role_id = #{roleId}
    </delete>
	
    <delete id="deleteFrontRoleByIds" parameterType="String">
        delete from front_role where role_id in 
        <foreach item="roleId" collection="array" open="(" separator="," close=")">
            #{roleId}
        </foreach>
    </delete>


    <select id="checkRoleNameUnique" parameterType="String" resultMap="FrontRoleResult">
        <include refid="selectFrontRoleVo"/>
        where r.role_name=#{roleName}
    </select>

    <select id="checkRoleKeyUnique" parameterType="String" resultMap="FrontRoleResult">
        <include refid="selectFrontRoleVo"/>
        where r.role_key=#{roleKey}
    </select>


    <delete id="deleteRoleByIds" parameterType="Long">
        update front_role set del_flag = '2' where role_id in
        <foreach collection="array" item="roleId" open="(" separator="," close=")">
            #{roleId}
        </foreach>
    </delete>


    <select id="selectRolesByUserId" parameterType="Long" resultMap="FrontRoleResult">
          select distinct r.role_id, r.role_name, r.role_key, r.role_sort, r.data_scope,
            r.status, r.del_flag, r.create_time, r.remark
        from front_role r
	        left join front_user_role ur on ur.role_id = r.role_id
	        left join front_user u on u.id = ur.user_id
	        left join front_dept d on u.org_id = d.id
        WHERE r.del_flag = '0' and ur.user_id = #{userId}
    </select>
</mapper>