UcGroupUserMapper.xml
2.94 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?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.hotent.uc.dao.UcGroupUserDao">
<!-- 通用查询映射结果 -->
<resultMap id="BaseResultMap" type="com.hotent.uc.model.UcGroupUser">
<id column="ID_" property="id" />
<result column="GROUP_ID_" property="groupId" />
<result column="USER_ID" property="userId" />
<result column="TENANT_ID_" property="tenantId" />
</resultMap>
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
ID_, GROUP_ID_, USER_ID, TENANT_ID_
</sql>
<select id="loadUserByGroupId" resultType="com.hotent.uc.dto.UserSeletorDto">
SELECT
<if test="ew.paramNameValuePairs.userGroupCount>1">
distinct
</if>
uu.ID_ AS "id",
uu.FULLNAME_ AS "fullname",
uu.ACCOUNT_ AS "account",
uo.NAME_ AS "orgname",
uo.id_ AS "orgid",
uo.PATH_NAME_ AS "pathname",
uo.dem_id_ AS "demid",
uop.POS_NAME_ AS "postname",
uou.pos_id_ AS "postid"
FROM uc_user uu
RIGHT JOIN UC_GROUP_USER ugu
ON ugu.USER_ID = uu.ID_
LEFT JOIN uc_org_user uou
ON uou.USER_ID_ = uu.ID_ AND uou.IS_MASTER_ = '1' AND uou.IS_DELE_ = '0'
AND uou.DEM_ID_ = #{demId}
LEFT JOIN uc_org uo
ON uou.ORG_ID_ = uo.ID_
AND uo.DEM_ID_ = #{demId}
LEFT JOIN UC_ORG_POST uop
ON uou.pos_id_ = uop.id_
LEFT JOIN UC_GROUP ug ON ugu.GROUP_ID_=ug.ID_
${ew.customSqlSegment}
<if test="@com.hotent.base.ognl.Ognl@isNotEmpty(ew.customSqlSegment)">
and
</if>
<if test="@com.hotent.base.ognl.Ognl@isEmpty(ew.customSqlSegment)">
where
</if>
uu.IS_DELE_ != '1'
AND uu.STATUS_ = 1
<if test="!groupIds.isEmpty()">
AND GROUP_ID_ IN
<foreach collection="groupIds" open="(" close=")" separator="," item="groupId">
#{groupId}
</foreach>
</if>
<if test="groupIds.isEmpty()">
AND GROUP_ID_ IN (
select ID_
from uc_group where CREATE_BY_ = #{ew.paramNameValuePairs.userId}
)
</if>
GROUP BY uu.ID_, uu.FULLNAME_, uu.ACCOUNT_, uo.NAME_, uo.id_, uo.PATH_NAME_, uo.dem_id_, uop.POS_NAME_, uou.pos_id_,ugu.SN_
<choose>
<when test="ew.paramNameValuePairs.userGroupCount>1">
ORDER BY uu.id_
</when>
<otherwise>
ORDER BY ugu.SN_
</otherwise>
</choose>
</select>
</mapper>