|
|
@ -829,4 +829,101 @@ WHERE 1 = 1 |
|
|
|
) userRanking |
|
|
|
WHERE userRanking.POINTS_TOTLE = #{pointsTotle} |
|
|
|
</select> |
|
|
|
|
|
|
|
<select id="selectListPoints" resultType="com.elink.esua.epdc.dto.UserPointResultDTO"> |
|
|
|
SELECT |
|
|
|
SUM(t0.points) AS points, |
|
|
|
SUM(t0.pointsTotle) AS pointsTotle, |
|
|
|
t0.ALL_DEPT_IDS, |
|
|
|
t0.PARENT_DEPT_IDS, |
|
|
|
t0.PARENT_DEPT_NAMES, |
|
|
|
<choose> |
|
|
|
<when test='type != "" and type != null and type=="1"'> |
|
|
|
t0.ALL_DEPT_NAMES as ALL_DEPT_NAMES |
|
|
|
</when> |
|
|
|
<otherwise> |
|
|
|
t0.PARENT_DEPT_NAMES as ALL_DEPT_NAMES |
|
|
|
</otherwise> |
|
|
|
</choose> |
|
|
|
FROM |
|
|
|
( |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUM(u.POINTS) AS points, |
|
|
|
SUM(u.POINTS_TOTLE) AS pointsTotle, |
|
|
|
u.ALL_DEPT_IDS, |
|
|
|
u.ALL_DEPT_NAMES, |
|
|
|
u.PARENT_DEPT_IDS, |
|
|
|
u.PARENT_DEPT_NAMES, |
|
|
|
u.ID |
|
|
|
FROM |
|
|
|
epdc_user u |
|
|
|
WHERE |
|
|
|
u.ALL_DEPT_IDS IS NOT NULL |
|
|
|
AND TRIM(u.ALL_DEPT_IDS) != '' |
|
|
|
AND u.DEL_FLAG = '0' |
|
|
|
GROUP BY |
|
|
|
u.ALL_DEPT_IDS |
|
|
|
ORDER BY |
|
|
|
pointsTotle DESC |
|
|
|
) |
|
|
|
UNION ALL |
|
|
|
( |
|
|
|
SELECT |
|
|
|
SUM(u2.POINTS) AS points, |
|
|
|
SUM(u2.POINTS_TOTLE) AS pointsTotle, |
|
|
|
ug2.ALL_DEPT_IDS, |
|
|
|
ug2.ALL_DEPT_NAMES, |
|
|
|
ug2.PARENT_DEPT_IDS, |
|
|
|
ug2.PARENT_DEPT_NAMES, |
|
|
|
u2.ID |
|
|
|
FROM |
|
|
|
epdc_user u2 |
|
|
|
LEFT JOIN ( |
|
|
|
SELECT |
|
|
|
u.ID, |
|
|
|
ug.ALL_DEPT_IDS, |
|
|
|
ug.ALL_DEPT_NAMES, |
|
|
|
ug.PARENT_DEPT_IDS, |
|
|
|
ug.PARENT_DEPT_NAMES |
|
|
|
FROM |
|
|
|
epdc_user u |
|
|
|
LEFT JOIN epdc_user_grid_relation ug ON u.ID = ug.USER_ID |
|
|
|
AND ug.DEL_FLAG = '0' |
|
|
|
WHERE |
|
|
|
u.DEL_FLAG = '0' |
|
|
|
GROUP BY |
|
|
|
u.ID |
|
|
|
ORDER BY |
|
|
|
ug.CREATED_TIME |
|
|
|
) ug2 ON u2.ID = ug2.ID |
|
|
|
WHERE |
|
|
|
u2.ALL_DEPT_IDS IS NULL |
|
|
|
OR TRIM(u2.ALL_DEPT_IDS) = '' |
|
|
|
GROUP BY |
|
|
|
ug2.ALL_DEPT_IDS |
|
|
|
ORDER BY |
|
|
|
pointsTotle DESC |
|
|
|
) |
|
|
|
) t0 |
|
|
|
LEFT JOIN ( select * from (select * from epdc_user_grid_relation order by CREATED_TIME)t group by t.USER_ID) ug3 ON t0.ID = ug3.USER_ID |
|
|
|
where ug3.DEL_FLAG = '0' |
|
|
|
<if test="deptIdList!=null and deptIdList.size()>0"> |
|
|
|
and ug3.GRID_ID IN |
|
|
|
<foreach item="deptIdItem" collection="deptIdList" open="(" separator="," close=")"> |
|
|
|
#{deptIdItem} |
|
|
|
</foreach> |
|
|
|
</if> |
|
|
|
GROUP BY |
|
|
|
<choose> |
|
|
|
<when test='type != "" and type != null and type=="1"'> |
|
|
|
t0.ALL_DEPT_IDS |
|
|
|
</when> |
|
|
|
<otherwise> |
|
|
|
t0.PARENT_DEPT_IDS |
|
|
|
</otherwise> |
|
|
|
</choose> |
|
|
|
ORDER BY |
|
|
|
points DESC |
|
|
|
</select> |
|
|
|
</mapper> |
|
|
|