McsbAuthMapper.xml 2.08 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.chinagas.modules.mcsb.mapper.McsbAuthMapper">

    <resultMap type="McsbAuth" id="McsbAuthResult">
        <result property="entityArea"    column="entity_area"    />
        <result property="entity"    column="entity"    />
        <result property="entityName"    column="entity_name"    />
        <result property="userId"    column="user_id"    />
        <result property="nickName"    column="nick_name"    />
    </resultMap>

    <select id="selectMcsbAuthList" parameterType="McsbAuth" resultMap="McsbAuthResult">
        SELECT
        t4.entity_name entity_area,ur.entity,t2.entity_name,ur.user_id,t3.nick_name
        FROM
        ys_entity_user ur
        LEFT JOIN ys_entity t2
        ON ur.entity = t2.ENTITY
        LEFT JOIN sys_user t3
        ON ur.user_id = t3.user_id
        LEFT JOIN ys_entity t4 ON SUBSTRING_INDEX(SUBSTRING_INDEX(t2.PATH,'\\',3),'\\','-1') = t4.ENTITY
        <where>
            <if test="entity != null  and entity != ''"> and ur.entity = #{entity}</if>
            <if test="userId != null  and userId != ''"> and ur.user_id = #{userId}</if>
            <if test="entityName != null  and entityName != ''"> and t2.entity_name like concat('%', #{entityName}, '%')</if>
            <if test="nickName != null  and nickName != ''"> and t3.nick_name = #{nickName}</if>
            ${params.dataScope}
        </where>
        order by t4.entity_name desc,ur.entity desc
    </select>

    <insert id="insertOrUpdateMcsbAuth" parameterType="McsbAuth">
        replace into ys_entity_user(
          entity,
          user_id
        ) values
        (
          #{entity},
          #{userId}
        )
    </insert>

    <delete id="deleteMcsbAuths" parameterType="list">
        delete from ys_entity_user where
        <foreach item="mcsbAuth" collection="list" open="(" separator="or" close=")">
           ( entity = #{mcsbAuth.entity} and user_id = #{mcsbAuth.userId})
        </foreach>
    </delete>
</mapper>