PrivilegeUserV1ServiceDaoImplMapper.xml 9.19 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="privilegeUserV1ServiceDaoImpl">

    <!-- 保存用户权限信息 add by wuxw 2018-07-03 -->
    <insert id="savePrivilegeUserInfo" parameterType="Map">
        insert into p_privilege_user(privilege_flag, pu_id, p_id, store_id, user_id)
        values (#{privilegeFlag}, #{puId}, #{pId}, #{storeId}, #{userId})
    </insert>

    <!-- 查询用户权限信息 add by wuxw 2018-07-03 -->
    <select id="getPrivilegeUserInfo" parameterType="Map" resultType="Map">
        select t.privilege_flag,t.privilege_flag privilegeFlag,t.pu_id,t.pu_id puId,t.p_id,t.p_id
        pId,t.status_cd,t.status_cd statusCd,t.store_id,t.store_id storeId,t.user_id,t.user_id userId
        <if test='privilegeFlag == "1"  and userId != null and userId != ""'>
            ,pg.`name` roleName
        </if>
        from p_privilege_user t
        <if test='privilegeFlag == "1"  and userId != null and userId != ""'>
            left join p_privilege_group pg on t.p_id = pg.pg_id and pg.status_cd = '0'
        </if>
        where 1 =1
        <if test="privilegeFlag !=null and privilegeFlag != ''">
            and t.privilege_flag= #{privilegeFlag}
        </if>
        <if test="puId !=null and puId != ''">
            and t.pu_id= #{puId}
        </if>
        <if test="pId !=null and pId != ''">
            and t.p_id= #{pId}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="storeId !=null and storeId != ''">
            and t.store_id= #{storeId}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        order by t.create_time desc
        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>
    </select>

    <!-- 修改用户权限信息 add by wuxw 2018-07-03 -->
    <update id="updatePrivilegeUserInfo" parameterType="Map">
        update p_privilege_user t set t.status_cd = #{statusCd}
        <if test="newBId != null and newBId != ''">
            ,t.b_id = #{newBId}
        </if>
        <if test="privilegeFlag !=null and privilegeFlag != ''">
            , t.privilege_flag= #{privilegeFlag}
        </if>
        <if test="pId !=null and pId != ''">
            , t.p_id= #{pId}
        </if>
        <if test="storeId !=null and storeId != ''">
            , t.store_id= #{storeId}
        </if>
        <if test="userId !=null and userId != ''">
            , t.user_id= #{userId}
        </if>
        where 1=1
        <if test="puId !=null and puId != ''">
            and t.pu_id= #{puId}
        </if>
    </update>

    <!-- 查询用户权限数量 add by wuxw 2018-07-03 -->
    <select id="queryPrivilegeUsersCount" parameterType="Map" resultType="Map">
        select count(1) count
        from p_privilege_user t
        <if test='privilegeFlag == "1"  and userId != null and userId != ""'>
            left join p_privilege_group pg on t.p_id = pg.pg_id and pg.status_cd = '0'
        </if>
        where 1 =1
        <if test="privilegeFlag !=null and privilegeFlag != ''">
            and t.privilege_flag= #{privilegeFlag}
        </if>
        <if test="puId !=null and puId != ''">
            and t.pu_id= #{puId}
        </if>
        <if test="pId !=null and pId != ''">
            and t.p_id= #{pId}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="storeId !=null and storeId != ''">
            and t.store_id= #{storeId}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
    </select>

    <!-- 查询用户权限数量 add by wuxw 2018-07-03 -->
    <select id="queryPrivilegeUserInfoCount" parameterType="Map" resultType="Map">
        select count(1) count
        from p_privilege_user t
        inner JOIN u_user uu on t.user_id = uu.user_id and uu.status_cd = '0'
        where 1 =1
        <if test="privilegeFlag !=null and privilegeFlag != ''">
            and t.privilege_flag= #{privilegeFlag}
        </if>
        <if test="puId !=null and puId != ''">
            and t.pu_id= #{puId}
        </if>
        <if test="pId !=null and pId != ''">
            and t.p_id= #{pId}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>

        <if test="storeId !=null and storeId != ''">
            and t.store_id= #{storeId}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="userName !=null and userName != ''">
            and uu.name like concat('%', #{userName},'%')
        </if>
    </select>

    <!-- 查询用户权限信息 add by wuxw 2018-07-03 -->
    <select id="queryPrivilegeUserInfos" parameterType="Map" resultType="Map">
        select t.privilege_flag,t.privilege_flag privilegeFlag,t.pu_id,t.pu_id puId,t.p_id,t.p_id
        pId,t.status_cd,t.status_cd statusCd,t.store_id,t.store_id storeId,t.user_id,t.user_id userId,
        uu.address,uu.sex,uu.user_id,uu.user_id userId,uu.level_cd,uu.level_cd
        levelCd,uu.location_cd,uu.location_cd locationCd,uu.score,uu.name,uu.tel,uu.email,uu.age
        from p_privilege_user t
        inner JOIN u_user uu on t.user_id = uu.user_id and uu.status_cd = '0'
        where 1 =1
        <if test="privilegeFlag !=null and privilegeFlag != ''">
            and t.privilege_flag= #{privilegeFlag}
        </if>
        <if test="puId !=null and puId != ''">
            and t.pu_id= #{puId}
        </if>
        <if test="pId !=null and pId != ''">
            and t.p_id= #{pId}
        </if>
        <if test="statusCd !=null and statusCd != ''">
            and t.status_cd= #{statusCd}
        </if>
        <if test="storeId !=null and storeId != ''">
            and t.store_id= #{storeId}
        </if>
        <if test="userId !=null and userId != ''">
            and t.user_id= #{userId}
        </if>
        <if test="userName !=null and userName != ''">
            and uu.name like concat('%', #{userName},'%')
        </if>
        order by t.create_time desc
        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>
    </select>

    <!-- 查询用户权限数量 add by wuxw 2018-07-03 -->
    <select id="queryStaffsNoRoleCount" parameterType="Map" resultType="Map">
        <if test="orgIds != null and orgIds.length > 0">
        select count(*) count from (
        </if>
        select count(1) count
        from u_user t
        inner join s_store_user su on t.user_id = su.user_id and su.status_cd = '0'
        left join p_privilege_user pu on t.user_id = pu.user_id and pu.status_cd = '0' and pu.privilege_flag = '1' and pu.p_id = #{pId}
        <if test="orgIds != null and orgIds.length > 0">
            LEFT JOIN u_org_staff_rel uosr on t.user_id=uosr.staff_id
        </if>
        where t.status_cd = '0'
        and pu.pu_id is null
        <if test="userName !=null and userName != ''">
            and t.name like concat('%', #{userName},'%')
        </if>
        <if test="levelCd !=null and levelCd != ''">
            and t.level_cd = #{levelCd}
        </if>
        and su.store_id = #{storeId}
        <if test="orgIds != null and orgIds.length > 0">
            and uosr.org_id in
            <foreach collection="orgIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
            AND uosr.status_cd = '0'
            group by t.user_id
        </if>
        <if test="orgIds != null and orgIds.length > 0">
            )a
        </if>
    </select>

    <!-- 查询用户权限信息 add by wuxw 2018-07-03 -->
    <select id="queryStaffsNoRoleInfos" parameterType="Map" resultType="Map">
        select
        t.user_id,t.user_id userId,
        t.address,t.sex,t.user_id,t.user_id userId,t.level_cd,t.level_cd
        levelCd,t.location_cd,t.location_cd locationCd,t.score,t.name,t.tel,t.email,t.age
        from u_user t
        inner join s_store_user su on t.user_id = su.user_id and su.status_cd = '0'
        left join p_privilege_user pu on t.user_id = pu.user_id and pu.status_cd = '0' and pu.privilege_flag = '1' and pu.p_id = #{pId}
        <if test="orgIds != null and orgIds.length > 0">
            LEFT JOIN u_org_staff_rel uosr on t.user_id=uosr.staff_id
        </if>
        where t.status_cd = '0'
        and pu.pu_id is null
        <if test="userName !=null and userName != ''">
            and t.name like concat('%', #{userName},'%')
        </if>
        <if test="levelCd !=null and levelCd != ''">
            and t.level_cd = #{levelCd}
        </if>
        and su.store_id = #{storeId}
        <if test="orgIds != null and orgIds.length > 0">
            and uosr.org_id in
            <foreach collection="orgIds" item="item" open="(" close=")" separator=",">
                #{item}
            </foreach>
            AND uosr.status_cd = '0'
            group by t.user_id
        </if>
        order by t.create_time desc
        <if test="page != -1 and page != null ">
            limit #{page}, #{row}
        </if>
    </select>
</mapper>