77 lines
2.8 KiB
XML
77 lines
2.8 KiB
XML
<?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.yfd.platform.system.mapper.PushConfigUserMapper">
|
|
|
|
<select id="selectAllActiveUsers" resultType="com.yfd.platform.system.domain.PushTargetUserVo">
|
|
SELECT
|
|
u.ID AS userId,
|
|
NVL(u.REAL_NAME, NVL(u.NICKNAME, u.USERNAME)) AS targetName,
|
|
u.PHONE AS targetPhone
|
|
FROM SYS_USER u
|
|
WHERE u.STATUS = 1
|
|
AND u.PHONE IS NOT NULL
|
|
AND TRIM(u.PHONE) IS NOT NULL
|
|
</select>
|
|
|
|
<select id="selectTargetUsersByConfigId" resultType="com.yfd.platform.system.domain.PushTargetUserVo">
|
|
SELECT DISTINCT
|
|
t.userId,
|
|
t.targetName,
|
|
t.targetPhone
|
|
FROM (
|
|
SELECT
|
|
u.ID AS userId,
|
|
NVL(u.REAL_NAME, NVL(u.NICKNAME, u.USERNAME)) AS targetName,
|
|
u.PHONE AS targetPhone
|
|
FROM PUSH_CONFIG_USER pcu
|
|
INNER JOIN SYS_USER u ON u.ID = pcu.USER_ROLE_ID
|
|
WHERE pcu.CONFIG_ID = #{configId}
|
|
AND pcu.TYPE = 0
|
|
AND NVL(pcu.IS_DELETED, 0) = 0
|
|
AND u.STATUS = 1
|
|
AND u.PHONE IS NOT NULL
|
|
AND TRIM(u.PHONE) IS NOT NULL
|
|
|
|
UNION ALL
|
|
|
|
SELECT
|
|
u.ID AS userId,
|
|
NVL(u.REAL_NAME, NVL(u.NICKNAME, u.USERNAME)) AS targetName,
|
|
u.PHONE AS targetPhone
|
|
FROM PUSH_CONFIG_USER pcu
|
|
INNER JOIN SYS_ROLE_USERS sru ON sru.ROLEID = pcu.USER_ROLE_ID
|
|
INNER JOIN SYS_USER u ON u.ID = sru.USERID
|
|
WHERE pcu.CONFIG_ID = #{configId}
|
|
AND pcu.TYPE = 1
|
|
AND NVL(pcu.IS_DELETED, 0) = 0
|
|
AND u.STATUS = 1
|
|
AND u.PHONE IS NOT NULL
|
|
AND TRIM(u.PHONE) IS NOT NULL
|
|
) t
|
|
</select>
|
|
|
|
<select id="selectConfigTargets" resultType="com.yfd.platform.system.domain.PushConfigTargetVo">
|
|
SELECT
|
|
pcu.ID AS id,
|
|
pcu.CONFIG_ID AS configId,
|
|
pcu.TYPE AS type,
|
|
pcu.USER_ROLE_ID AS userRoleId,
|
|
CASE
|
|
WHEN pcu.TYPE = 0 THEN NVL(u.REAL_NAME, NVL(u.NICKNAME, u.USERNAME))
|
|
ELSE r.ROLENAME
|
|
END AS targetName,
|
|
CASE
|
|
WHEN pcu.TYPE = 0 THEN u.PHONE
|
|
ELSE NULL
|
|
END AS targetPhone
|
|
FROM PUSH_CONFIG_USER pcu
|
|
LEFT JOIN SYS_USER u ON pcu.TYPE = 0 AND u.ID = pcu.USER_ROLE_ID
|
|
LEFT JOIN SYS_ROLE r ON pcu.TYPE = 1 AND r.ID = pcu.USER_ROLE_ID
|
|
WHERE pcu.CONFIG_ID = #{configId}
|
|
AND NVL(pcu.IS_DELETED, 0) = 0
|
|
ORDER BY pcu.CREATED_AT DESC, pcu.ID DESC
|
|
</select>
|
|
|
|
</mapper>
|