diff --git a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml
index 992e967b5..e76689b4b 100644
--- a/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml
+++ b/esua-epdc/epdc-module/epdc-analysis/epdc-analysis-server/src/main/resources/mapper/user/UserAnalysisDao.xml
@@ -365,7 +365,7 @@
COUNT((t.AUTHENTICATED_TYPE='1' and t.AUTHENTICATED_FLAG = '1') OR NULL) partyCount
FROM (
SELECT
- uu.ID, uu.DEPT_ID , uu.STATE, uu.PARTY_FLAG,
+ uu.ID, ifnull(if(uu.DEPT_ID = 0,null,uu.DEPT_ID),RELATION.Grid_id) DEPT_ID, uu.STATE, uu.PARTY_FLAG,
HISTORY.AUTHENTICATED_TYPE,HISTORY.AUTHENTICATED_FLAG,HISCOUNT.HistoryCount
FROM
esua_epdc_user.epdc_user uu
@@ -396,15 +396,23 @@
GROUP BY USER_ID
) HISCOUNT ON HISCOUNT.USER_ID = uu.ID
+ LEFT JOIN (
+ SELECT MIN( CREATED_TIME ) AS CREATED_TIME,
+ USER_ID FROM esua_epdc_user.epdc_user_grid_relation
+ WHERE
+ DEL_FLAG = '0'
+ GROUP BY
+ USER_ID
+ ) MINRELA ON MINRELA.USER_ID = uu.ID
+ LEFT JOIN esua_epdc_user.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
uu.DEL_FLAG = '0'
- AND uu.DEPT_ID in
+ AND ifnull(if(uu.DEPT_ID = 0,null,uu.DEPT_ID),RELATION.Grid_id) in
AND DATE_FORMAT(uu.CREATED_TIME,'%Y-%m-%d') BETWEEN #{startTime} AND #{endTime}
- AND uu.DEPT_ID IS NOT NULL
) t
GROUP BY t.DEPT_ID
@@ -525,7 +533,7 @@
ad.id IN
AND ad.del_flag = 0
) t0
- ON find_in_set(t0.id, IFNULL(uu.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS))
+ ON find_in_set(t0.id, IFNULL(if(uu.ALL_DEPT_IDS = '',null,uu.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS))
LEFT JOIN (
SELECT MAX( CREATED_TIME ) AS CREATED_TIME, USER_ID
FROM esua_epdc_user.epdc_user_authenticate_history
@@ -541,7 +549,7 @@
LEFT JOIN esua_epdc_user.epdc_user_authenticate_history HISTORY ON HISTORY.USER_ID = MAXHIS.USER_ID AND HISTORY.CREATED_TIME = MAXHIS.CREATED_TIME AND HISTORY.DEL_FLAG = '0'
where uu.DEL_FLAG = '0'
- AND IFNULL(if(uu.dept_id=0,null,u.dept_id),RELATION.GRID_ID) IN
+ AND IFNULL(if(uu.dept_id=0,null,uu.dept_id),RELATION.GRID_ID) IN
#{deptId}
diff --git a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml
index df9458e88..e778c15d7 100644
--- a/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml
+++ b/esua-epdc/epdc-module/epdc-user/epdc-user-server/src/main/resources/mapper/UserDao.xml
@@ -707,16 +707,16 @@
#{deptId}
- AND (find_in_set(#{streetId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{streetId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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(#{communityId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{communityId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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 (IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) = #{gridId}
- OR find_in_set(#{gridId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ OR find_in_set(#{gridId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
and HISTORY.AUTHENTICATED_TYPE='0' and HISTORY.AUTHENTICATED_FLAG = '2'
GROUP BY u.ID
@@ -773,16 +773,16 @@
#{deptId}
- AND (find_in_set(#{streetId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{streetId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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(#{communityId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{communityId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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 (IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) = #{gridId}
- OR find_in_set(#{gridId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ OR find_in_set(#{gridId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
and HISTORY.id is null
GROUP BY u.ID
@@ -840,16 +840,16 @@
#{deptId}
- AND (find_in_set(#{streetId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{streetId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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(#{communityId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{communityId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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 (IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) = #{gridId}
- OR find_in_set(#{gridId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ OR find_in_set(#{gridId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
and HISTORY.AUTHENTICATED_TYPE='0' and HISTORY.AUTHENTICATED_FLAG = '0'
GROUP BY u.ID
@@ -943,16 +943,16 @@
#{deptId}
- AND (find_in_set(#{streetId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{streetId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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(#{communityId},IFNULL(u.PARENT_DEPT_IDS,RELATION.PARENT_DEPT_IDS))
- OR find_in_set(#{communityId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ 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 (IFNULL(if(u.dept_id=0,null,u.dept_id),RELATION.GRID_ID) = #{gridId}
- OR find_in_set(#{gridId},IFNULL(u.ALL_DEPT_IDS,RELATION.ALL_DEPT_IDS)))
+ OR find_in_set(#{gridId},IFNULL(if(u.ALL_DEPT_IDS = '',null,u.ALL_DEPT_IDS),RELATION.ALL_DEPT_IDS)))
and HISTORY.AUTHENTICATED_TYPE='1' and HISTORY.AUTHENTICATED_FLAG = '0'
GROUP BY u.ID