<?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.ruili.wcp.dao.management.GroupUserMapper">
|
<!-- 带流组内人员信息返回结果 -->
|
<resultMap id="WithUserResultMap" type="com.ruili.wcp.data.vo.management.GroupUserVO">
|
<id column="id" jdbcType="BIGINT" property="Id"/>
|
<result column="group_id" property="groupId"/>
|
<result column="grop_name" property="groupName"/>
|
<result column="user_id" property="userId"/>
|
<result column="user_name" property="userName"/>
|
<result column="true_name" property="trueName"/>
|
<result column="dept_id" property="deptId"/>
|
<result column="dept_name" property="deptName"/>
|
<result column="security_level" property="securityLevel"/>
|
</resultMap>
|
|
<!-- 查询带组内人员SQL -->
|
<select id="selectWithUser" parameterType="map" resultMap="WithUserResultMap">
|
SELECT a.id,b.group_id,b.group_name,c.user_id,c.true_name,c.user_name FROM
|
sys_group_user a,sys_group b,sys_account c WHERE a.group_id=b.group_id
|
and a.user_id=c.user_id and b.group_id=#{groupId}
|
|
<if test="keyWord!=null">AND c.true_name like concat('%',#{keyWord},'%')</if>
|
|
<if test="sort!=null">
|
order by ${sort} ${order}
|
</if>
|
limit #{currIndex} , #{pageSize}
|
</select>
|
<select id="selectWithUser" parameterType="map" resultMap="WithUserResultMap" databaseId="oracle">
|
SELECT * FROM (
|
SELECT ROWNUM AS RN, a.id,b.group_id,b.group_name,c.user_id,c.true_name,c.user_name FROM
|
sys_group_user a,sys_group b,sys_account c WHERE a.group_id=b.group_id
|
and a.user_id=c.user_id and b.group_id=#{groupId}
|
|
<if test="keyWord!=null">AND c.true_name like '%' || #{keyWord} || '%'</if>
|
|
<if test="sort!=null">
|
order by ${sort} ${order}
|
</if>
|
) T
|
WHERE RN BETWEEN ${currIndex} AND (${currIndex} + ${pageSize})
|
</select>
|
<select id="selectWithUser" parameterType="map" resultMap="WithUserResultMap" databaseId="kingbasees">
|
SELECT * FROM (
|
SELECT ROWNUM AS RN, a.id,b.group_id,b.group_name,c.user_id,c.true_name,c.user_name FROM
|
sys_group_user a,sys_group b,sys_account c WHERE a.group_id=b.group_id
|
and a.user_id=c.user_id and b.group_id=#{groupId}
|
|
<if test="keyWord!=null">AND c.true_name like '%' || #{keyWord} || '%'</if>
|
|
<if test="sort!=null">
|
order by ${sort} ${order}
|
</if>
|
) T
|
WHERE RN BETWEEN ${currIndex} AND (${currIndex} + ${pageSize})
|
</select>
|
<select id="selectWithUser" parameterType="map" resultMap="WithUserResultMap" databaseId="sqlServer">
|
SELECT * FROM (
|
SELECT ROW_NUMBER() OVER(
|
<if test="sort!=null">
|
order by ${sort} ${order}
|
</if>
|
) AS RN, a.id,b.group_id,b.group_name,c.user_id,c.true_name,c.user_name FROM
|
sys_group_user a,sys_group b,sys_account c WHERE a.group_id=b.group_id
|
and a.user_id=c.user_id and b.group_id=#{groupId}
|
<if test="keyWord!=null">AND c.true_name like '%' || #{keyWord} || '%'</if>
|
) T
|
WHERE RN BETWEEN ${currIndex} AND (${currIndex} + ${pageSize})
|
</select>
|
|
<!-- 查询带组内人员总数量SQL -->
|
<select id="selectCountWithUser" parameterType="map" resultType="Integer">
|
select
|
count(1)
|
FROM sys_group_user a,sys_group b,sys_account c
|
WHERE a.group_id=b.group_id and a.user_id=c.user_id and
|
b.group_id=#{groupId}
|
<if test="keyWord!=null">AND c.true_name like concat('%',#{keyWord},'%')</if>
|
</select>
|
<!-- 查询带组内人员总数量SQL -->
|
<select id="selectCountWithUser" parameterType="map" resultType="Integer" databaseId="oracle">
|
select
|
count(1)
|
FROM sys_group_user a,sys_group b,sys_account c
|
WHERE a.group_id=b.group_id and a.user_id=c.user_id and
|
b.group_id=#{groupId}
|
<if test="keyWord!=null">AND c.true_name like '%' || #{keyWord} || '%'</if>
|
</select>
|
<!-- 查询带组内人员总数量SQL -->
|
<select id="selectCountWithUser" parameterType="map" resultType="Integer" databaseId="kingbasees">
|
select
|
count(1)
|
FROM sys_group_user a,sys_group b,sys_account c
|
WHERE a.group_id=b.group_id and a.user_id=c.user_id and
|
b.group_id=#{groupId}
|
<if test="keyWord!=null">AND c.true_name like '%' || #{keyWord} || '%'</if>
|
</select>
|
|
<!-- 查询带组内人员SQL -->
|
<select id="selectUserByGroupId" parameterType="Long" resultMap="WithUserResultMap">
|
SELECT a.id, b.group_id, b.group_name, c.user_id, c.true_name, c.security_level
|
FROM sys_group_user a,
|
sys_group b,
|
sys_account c
|
WHERE a.group_id = b.group_id
|
and a.user_id = c.user_id
|
and b.group_id = #{groupId}
|
ORDER BY c.sort_num asc
|
</select>
|
</mapper>
|