Browse Source

【居民管理修改】-【未认证、已认证、待认证】-(王童)-2020/05/28

feature/dangjian
Jackwang 5 years ago
parent
commit
22e8abc8db
  1. 372
      esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

372
esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml

@ -543,24 +543,43 @@
</select>
<select id="selectAuthenticatedListUserDtoByList" resultType="com.elink.esua.epdc.dto.UserDTO">
SELECT
u.id,
USER.DEPT_ID,
USER.ID,
USER.REAL_NAME,
USER.NICKNAME,
USER.MOBILE,
USER.REGISTER_TIME,
USER.CREATED_TIME,
USER.UPDATED_TIME,
USER.IDENTITY_NO,
USER.ADDRESS,
USER.STATE,
USER.PARTY_FLAG,
USER.ALL_DEPT_NAMES,
USER.FACE_IMG,
USER.PARENT_DEPT_IDS,
USER.ALL_DEPT_IDS
FROM
(
SELECT DISTINCT
u.ID,
u.REAL_NAME,
u.NICKNAME,
u.MOBILE,
u.REGISTER_TIME,
u.CREATED_TIME,
IDENTITY_NO,
u.UPDATED_TIME,
u.IDENTITY_NO,
u.ADDRESS,
STATE,
PARTY_FLAG,
u.STATE,
u.PARTY_FLAG,
u.ALL_DEPT_NAMES,
u.FACE_IMG
FROM
epdc_user u
LEFT JOIN (
u.FACE_IMG,
u.PARENT_DEPT_IDS,
u.ALL_DEPT_IDS,
(
SELECT
MAX( CREATED_TIME ) AS CREATED_TIME,
USER_ID
AUTHENTICATED_TYPE
FROM
epdc_user_authenticate_history
WHERE
@ -569,114 +588,122 @@
<if test="endTime != ''">
and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') &lt;= #{endTime}
</if>
GROUP BY USER_ID
) MAXHIS ON MAXHIS.USER_ID = u.ID
LEFT JOIN epdc_user_authenticate_history HISTORY ON HISTORY.USER_ID = MAXHIS.USER_ID AND HISTORY.CREATED_TIME = MAXHIS.CREATED_TIME AND HISTORY.DEL_FLAG = '0'
LEFT JOIN (
AND USER_ID = u.ID
ORDER BY
CREATED_TIME DESC,
id
LIMIT 1
) AS AUTHENTICATED_TYPE,-- 认证类型
(
SELECT
count(id) AS HistoryCount,
USER_ID
AUTHENTICATED_FLAG
FROM
epdc_user_authenticate_history
WHERE
DEL_FLAG = '0'
AND AUTHENTICATED_TYPE IN ( '0', '1' )
AND AUTHENTICATED_FLAG= '1'
<if test="endTime != ''">
and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') &lt;= #{endTime}
</if>
GROUP BY
USER_ID
) HISCOUNT ON HISCOUNT.USER_ID = u.ID
where
u.del_flag = '0'
<if test="startTime != '' and endTime != ''">and DATE_FORMAT(u.CREATED_TIME,'%Y-%m-%d') between #{startTime} and #{endTime}</if>
<!--<if test="state != '' and state != null">and u.state = #{state}</if>-->
<if test="realName != '' and realName != null">and u.real_name like '%${realName}%'</if>
<if test="nickname != '' and nickname != null">and u.NICKNAME like '%${nickname}%'</if>
<if test="mobile != '' and mobile != null">and u.mobile like '%${mobile}%'</if>
<if test="identityNo != '' and identityNo != null">and u.identity_no like '%${identityNo}%'</if>
<if test="streetId != '' and streetId != null">
AND (find_in_set(#{streetId},u.PARENT_DEPT_IDS)
OR find_in_set(#{streetId},u.ALL_DEPT_IDS))
</if>
<if test="communityId != '' and communityId != null">
AND (find_in_set(#{communityId},u.PARENT_DEPT_IDS)
OR find_in_set(#{communityId},u.ALL_DEPT_IDS))
AND USER_ID = u.ID
ORDER BY
CREATED_TIME DESC,
id
LIMIT 1
) AS AUTHENTICATED_FLAG,-- 认证标识
(
SELECT
count( id ) AS HistoryCount
FROM
epdc_user_authenticate_history
WHERE
DEL_FLAG = '0'
AND AUTHENTICATED_TYPE IN ( '0', '1' )
AND AUTHENTICATED_FLAG = '1'
<if test="endTime != ''">
and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') &lt;= #{endTime}
</if>
<if test="gridId != '' and gridId != null">
AND
find_in_set(#{gridId},u.ALL_DEPT_IDS)
AND USER_ID = u.ID
) AS HistoryCount,-- 统计
ifnull(
IF
( u.DEPT_ID = 0, NULL, u.DEPT_ID ),
( SELECT GRID_ID FROM epdc_user_grid_relation WHERE DEL_FLAG = '0' AND USER_ID = u.ID ORDER BY CREATED_TIME, id LIMIT 1 )
) AS DEPT_ID
FROM
epdc_user u
WHERE
u.DEL_FLAG = '0'
<if test="startTime != '' and endTime != ''">
AND DATE_FORMAT( u.CREATED_TIME, '%Y-%m-%d' ) BETWEEN #{startTime} and #{endTime}
</if>
AND u.DEPT_ID IN
) USER
WHERE
USER.DEPT_ID IN
<foreach collection="deptIdList" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
and ((HISTORY.AUTHENTICATED_TYPE='0' and HISTORY.AUTHENTICATED_FLAG = '1') or (HISTORY.AUTHENTICATED_TYPE='1' and HISTORY.AUTHENTICATED_FLAG = '0' AND HISCOUNT.HistoryCount > 0))
ORDER BY
u.register_time desc
</select>
<select id="selectWaitAuthenticatedListUserDto" resultType="com.elink.esua.epdc.dto.UserDTO">
<!--SELECT
u.id,
u.REAL_NAME,
u.NICKNAME,
u.MOBILE,
u.REGISTER_TIME,
u.CREATED_TIME,
IDENTITY_NO,
ADDRESS,
STATE,
PARTY_FLAG,
u.ALL_DEPT_NAMES,
u.FACE_IMG
FROM
epdc_user u
where
u.del_flag = '0'
and (u.IDENTITY_NO is null or u.IDENTITY_NO = '')
<if test="startTime != '' and endTime != ''">and u.CREATED_TIME between #{startTime} and #{endTime}</if>
<if test="state != '' and state != null">and u.state = #{state}</if>
<if test="realName != '' and realName != null">and u.real_name like '%${realName}%'</if>
<if test="nickname != '' and nickname != null">and u.NICKNAME like '%${nickname}%'</if>
<if test="mobile != '' and mobile != null">and u.mobile like '%${mobile}%'</if>
<if test="identityNo != '' and identityNo != null">and u.identity_no like '%${identityNo}%'</if>
<if test="partyFlag != '' and partyFlag != null">and u.party_flag = #{partyFlag}</if>
<if test="streetId != '' and streetId != null">
AND (find_in_set(#{streetId},u.PARENT_DEPT_IDS)
OR find_in_set(#{streetId},u.ALL_DEPT_IDS))
AND (find_in_set(#{streetId},USER.PARENT_DEPT_IDS)
OR find_in_set(#{streetId},USER.ALL_DEPT_IDS))
</if>
<if test="communityId != '' and communityId != null">
AND (find_in_set(#{communityId},u.PARENT_DEPT_IDS)
OR find_in_set(#{communityId},u.ALL_DEPT_IDS))
AND (find_in_set(#{communityId},USER.PARENT_DEPT_IDS)
OR find_in_set(#{communityId},USER.ALL_DEPT_IDS))
</if>
<if test="gridId != '' and gridId != null">
AND
find_in_set(#{gridId},u.ALL_DEPT_IDS)
AND find_in_set(#{gridId},USER.ALL_DEPT_IDS)
</if>
AND (
( USER.AUTHENTICATED_TYPE = '0' AND USER.AUTHENTICATED_FLAG = '1' )
OR ( USER.AUTHENTICATED_TYPE = '1' AND USER.AUTHENTICATED_FLAG = '0' AND USER.HistoryCount > 0 )
)
ORDER BY
u.register_time desc-->
USER.register_time DESC
</select>
<select id="selectWaitAuthenticatedListUserDto" resultType="com.elink.esua.epdc.dto.UserDTO">
SELECT
u.id,
user.DEPT_ID,
user.ID,
user.REAL_NAME,
user.NICKNAME,
user.MOBILE,
user.REGISTER_TIME,
user.CREATED_TIME,
user.UPDATED_TIME,
user.IDENTITY_NO,
user.ADDRESS,
user.STATE,
user.PARTY_FLAG,
user.ALL_DEPT_NAMES,
user.FACE_IMG,
user.PARENT_DEPT_IDS,
user.ALL_DEPT_IDS
FROM (SELECT
DISTINCT
u.ID,
u.REAL_NAME,
u.NICKNAME,
u.MOBILE,
u.REGISTER_TIME,
u.CREATED_TIME,
u.UPDATED_TIME,
IDENTITY_NO,
u.IDENTITY_NO,
u.ADDRESS,
STATE,
PARTY_FLAG,
IFNULL(u.ALL_DEPT_NAMES,RELATION.ALL_DEPT_NAMES) ALL_DEPT_NAMES,
u.FACE_IMG
FROM
epdc_user u
LEFT JOIN (
u.STATE,
u.PARTY_FLAG,
u.ALL_DEPT_NAMES,
u.FACE_IMG,
u.PARENT_DEPT_IDS,
u.ALL_DEPT_IDS,
(
SELECT
MAX( CREATED_TIME ) AS CREATED_TIME,
USER_ID
AUTHENTICATED_TYPE
FROM
epdc_user_authenticate_history
WHERE
@ -685,64 +712,109 @@
<if test="endTime != ''">
and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') &lt;= #{endTime}
</if>
GROUP BY USER_ID
) MAXHIS ON MAXHIS.USER_ID = u.ID
LEFT JOIN epdc_user_authenticate_history HISTORY ON HISTORY.USER_ID = MAXHIS.USER_ID AND HISTORY.CREATED_TIME = MAXHIS.CREATED_TIME AND HISTORY.DEL_FLAG = '0'
LEFT JOIN (
SELECT MIN( ug.CREATED_TIME ) AS CREATED_TIME,
ug.USER_ID FROM epdc_user_grid_relation ug
AND USER_ID = u.ID
ORDER BY
CREATED_TIME DESC,
id
LIMIT 1
) AS AUTHENTICATED_TYPE, -- 认证类型
(
SELECT
AUTHENTICATED_FLAG
FROM
epdc_user_authenticate_history
WHERE
ug.DEL_FLAG = '0'
GROUP BY USER_ID
) MINRELA ON MINRELA.USER_ID = u.ID
LEFT JOIN epdc_user_grid_relation RELATION ON RELATION.USER_ID = MINRELA.USER_ID AND RELATION.DEL_FLAG = '0' AND MINRELA.CREATED_TIME = RELATION.CREATED_TIME
where u.del_flag = '0'
<if test="startTime != '' and endTime != ''">and DATE_FORMAT(u.CREATED_TIME,'%Y-%m-%d') between #{startTime} and #{endTime}</if>
DEL_FLAG = '0'
AND AUTHENTICATED_TYPE IN ( '0', '1' )
<if test="endTime != ''">
and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') &lt;= #{endTime}
</if>
AND USER_ID = u.ID
ORDER BY
CREATED_TIME DESC ,
id
LIMIT 1
) AS AUTHENTICATED_FLAG, -- 认证标识
ifnull(if(u.DEPT_ID = 0, NULL, u.DEPT_ID), (
SELECT GRID_ID FROM epdc_user_grid_relation
WHERE DEL_FLAG = '0' AND USER_ID = u.ID
ORDER BY
CREATED_TIME,
id
LIMIT 1
)) AS DEPT_ID
FROM
epdc_user u
where u.DEL_FLAG = '0'
<if test="startTime != '' and endTime != ''">
and DATE_FORMAT(u.CREATED_TIME,'%Y-%m-%d') between #{startTime} and #{endTime}
</if>
) user
where user.DEPT_ID IN
<foreach collection="deptIdList" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
<if test="realName != '' and realName != null">and u.real_name like '%${realName}%'</if>
<if test="nickname != '' and nickname != null">and u.NICKNAME like '%${nickname}%'</if>
<if test="mobile != '' and mobile != null">and u.mobile like '%${mobile}%'</if>
<if test="identityNo != '' and identityNo != null">and u.identity_no like '%${identityNo}%'</if>
AND IFNULL(if(u.dept_id = 0 ,null,u.dept_id),RELATION.GRID_ID) IN
<foreach collection="deptIdList" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
<if test="streetId != '' and streetId != null">
AND (find_in_set(#{streetId},IFNULL(if(u.PARENT_DEPT_IDS = '',null,u.PARENT_DEPT_IDS),RELATION.PARENT_DEPT_IDS))
OR find_in_set(#{streetId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
AND (find_in_set(#{streetId},user.PARENT_DEPT_IDS)
OR find_in_set(#{streetId},user.ALL_DEPT_IDS ))
</if>
<if test="communityId != '' and communityId != null">
AND (find_in_set(#{communityId},IFNULL(if(u.PARENT_DEPT_IDS = '',null,u.PARENT_DEPT_IDS),RELATION.PARENT_DEPT_IDS))
OR find_in_set(#{communityId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
AND (find_in_set(#{communityId},user.PARENT_DEPT_IDS)
OR find_in_set(#{communityId},user.ALL_DEPT_IDS))
</if>
<if test="gridId != '' and gridId != null">
and (IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) = #{gridId}
OR find_in_set(#{gridId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
and (user.DEPT_ID = #{gridId}
OR find_in_set(#{gridId},user.ALL_DEPT_IDS))
</if>
and HISTORY.AUTHENTICATED_TYPE='0' and HISTORY.AUTHENTICATED_FLAG = '2'
GROUP BY u.ID
ORDER BY u.register_time desc
AND user.AUTHENTICATED_TYPE = '0'
AND user.AUTHENTICATED_FLAG = '2'
ORDER BY
user.register_time DESC
</select>
<select id="selectListUserDtoByList" resultType="com.elink.esua.epdc.dto.UserDTO">
SELECT
u.id,
user.DEPT_ID,
user.id,
user.REAL_NAME,
user.NICKNAME,
user.MOBILE,
user.REGISTER_TIME,
user.CREATED_TIME,
user.UPDATED_TIME,
user.IDENTITY_NO,
user.ADDRESS,
user.STATE,
user.PARTY_FLAG,
user.ALL_DEPT_NAMES,
user.FACE_IMG,
user.ALL_DEPT_IDS,
user.PARENT_DEPT_IDS
FROM (SELECT
DISTINCT
u.ID,
u.REAL_NAME,
u.NICKNAME,
u.MOBILE,
u.REGISTER_TIME,
u.CREATED_TIME,
u.UPDATED_TIME,
IDENTITY_NO,
u.IDENTITY_NO,
u.ADDRESS,
STATE,
PARTY_FLAG,
IFNULL(u.ALL_DEPT_NAMES,RELATION.ALL_DEPT_NAMES) ALL_DEPT_NAMES,
u.FACE_IMG
FROM
epdc_user u
LEFT JOIN (
u.STATE,
u.PARTY_FLAG,
u.ALL_DEPT_NAMES ALL_DEPT_NAMES,
u.FACE_IMG,
u.ALL_DEPT_IDS,
u.PARENT_DEPT_IDS,
(
SELECT
MAX( CREATED_TIME ) AS CREATED_TIME,
USER_ID
AUTHENTICATED_TYPE
FROM
epdc_user_authenticate_history
WHERE
@ -751,42 +823,50 @@
<if test="endTime != ''">
and DATE_FORMAT(CREATED_TIME,'%Y-%m-%d') &lt;= #{endTime}
</if>
GROUP BY USER_ID
) MAXHIS ON MAXHIS.USER_ID = u.ID
LEFT JOIN epdc_user_authenticate_history HISTORY ON HISTORY.USER_ID = MAXHIS.USER_ID AND HISTORY.CREATED_TIME = MAXHIS.CREATED_TIME AND HISTORY.DEL_FLAG = '0'
LEFT JOIN (
SELECT MIN( ug.CREATED_TIME ) AS CREATED_TIME,
ug.USER_ID FROM epdc_user_grid_relation ug
WHERE
ug.DEL_FLAG = '0'
GROUP BY USER_ID
) MINRELA ON MINRELA.USER_ID = u.ID
LEFT JOIN epdc_user_grid_relation RELATION ON RELATION.USER_ID = MINRELA.USER_ID AND RELATION.DEL_FLAG = '0' AND MINRELA.CREATED_TIME = RELATION.CREATED_TIME
where u.del_flag = '0'
<if test="startTime != '' and endTime != ''">and DATE_FORMAT(u.CREATED_TIME,'%Y-%m-%d') between #{startTime} and #{endTime}</if>
AND USER_ID = u.ID
ORDER BY
CREATED_TIME DESC,
id
LIMIT 1
) AS AUTHENTICATED_TYPE, -- 认证类型
ifnull(if(u.DEPT_ID = 0, NULL, u.DEPT_ID), (
SELECT GRID_ID FROM epdc_user_grid_relation
WHERE DEL_FLAG = '0' AND USER_ID = u.ID
ORDER BY
CREATED_TIME,
id
LIMIT 1
)) AS DEPT_ID
FROM
epdc_user u
where u.DEL_FLAG = '0'
<if test="startTime != '' and endTime != ''">and DATE_FORMAT(u.CREATED_TIME,'%Y-%m-%d') between #{startTime} and
#{endTime}
</if>) user
where user.DEPT_ID in
<foreach collection="deptIdList" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
and user.AUTHENTICATED_TYPE is null
<if test="realName != '' and realName != null">and u.real_name like '%${realName}%'</if>
<if test="nickname != '' and nickname != null">and u.NICKNAME like '%${nickname}%'</if>
<if test="mobile != '' and mobile != null">and u.mobile like '%${mobile}%'</if>
<if test="identityNo != '' and identityNo != null">and u.identity_no like '%${identityNo}%'</if>
AND IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) IN
<foreach collection="deptIdList" index="index" item="deptId" open="(" separator="," close=")">
#{deptId}
</foreach>
<if test="streetId != '' and streetId != null">
AND (find_in_set(#{streetId},IFNULL(if(u.PARENT_DEPT_IDS = '',null,u.PARENT_DEPT_IDS),RELATION.PARENT_DEPT_IDS))
OR find_in_set(#{streetId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
AND (find_in_set(#{streetId},user.PARENT_DEPT_IDS)
OR find_in_set(#{streetId},user.ALL_DEPT_IDS ))
</if>
<if test="communityId != '' and communityId != null">
AND (find_in_set(#{communityId},IFNULL(if(u.PARENT_DEPT_IDS = '',null,u.PARENT_DEPT_IDS),RELATION.PARENT_DEPT_IDS))
OR find_in_set(#{communityId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
AND (find_in_set(#{communityId},user.PARENT_DEPT_IDS)
OR find_in_set(#{communityId},user.ALL_DEPT_IDS))
</if>
<if test="gridId != '' and gridId != null">
and (IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) = #{gridId}
OR find_in_set(#{gridId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
and (user.DEPT_ID = #{gridId}
OR find_in_set(#{gridId},user.ALL_DEPT_IDS))
</if>
and HISTORY.id is null
GROUP BY u.ID
ORDER BY u.register_time desc
ORDER BY user.register_time desc
</select>
<select id="selectFaildAuthenticatedListUserDto" resultType="com.elink.esua.epdc.dto.UserDTO">

Loading…
Cancel
Save