integrated_traffic_scheduled/src/main/resources/mybatis/datasource/check/CheckUserMapper.xml

91 lines
2.4 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.zcloud.mapper.datasource.check.CheckUserMapper">
<!-- 绩效得分 -->
<select id="getDeptExamine" parameterType="pd" resultType="pd" >
SELECT
d.DEPARTMENT_ID,
ifnull(sta.NUM,0) as sta_count,
ifnull(che.NUM,0) as check_count
FROM
OA_DEPARTMENT d
left JOIN (
SELECT
sum(f.NOTEXAMINEDNUM) NUM,
u.DEPARTMENT_ID
FROM
vi_list_statistics_all f
LEFT JOIN SYS_USER u ON u.USER_ID = f.USER_ID
WHERE
(
f.STARTTIME BETWEEN #{STARTTIME} and #{ENDTIME}
or
f.ENDTIME BETWEEN #{STARTTIME} and #{ENDTIME}
or
(f.STARTTIME &lt;= #{STARTTIME} and f.ENDTIME &gt;= #{ENDTIME})
)
group by u.DEPARTMENT_ID
) sta on sta.DEPARTMENT_ID=d.DEPARTMENT_ID
LEFT JOIN (
SELECT
count( distinct cr.LISTMANAGER_ID ) NUM,
c.DEPARTMENT_ID
FROM
vi_list_checkuser_all c
LEFT JOIN vi_list_checkrecord_all cr ON c.CHECKRECORD_ID = cr.CHECKRECORD_ID and c.LIST_TYPE=cr.LIST_TYPE
WHERE
cr.isdelete = '0'
AND cr.FINISHED = '1'
AND cr.ISSTATISTICS = '1'
AND cr.CHECK_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
group by c.DEPARTMENT_ID
) che on che.DEPARTMENT_ID = d.DEPARTMENT_ID
where
d.ISDELETE = 0
</select>
<select id="getUserExamine" parameterType="pd" resultType="pd" >
SELECT
u.USER_ID,
ifnull(sta.NUM,0) as sta_count,
ifnull(che.NUM,0) as check_count
FROM
SYS_USER u
left JOIN (
SELECT
sum(f.NOTEXAMINEDNUM) NUM,
f.USER_ID
FROM
vi_list_statistics_all f
WHERE
(
f.STARTTIME BETWEEN #{STARTTIME} and #{ENDTIME}
or
f.ENDTIME BETWEEN #{STARTTIME} and #{ENDTIME}
or
(f.STARTTIME &lt;= #{STARTTIME} and f.ENDTIME &gt;= #{ENDTIME})
)
group by f.USER_ID
) sta on sta.USER_ID=u.USER_ID
LEFT JOIN (
SELECT
count( distinct cr.LISTMANAGER_ID ) NUM,
c.USER_ID
FROM
vi_list_checkuser_all c
LEFT JOIN vi_list_checkrecord_all cr ON c.CHECKRECORD_ID = cr.CHECKRECORD_ID and c.LIST_TYPE=cr.LIST_TYPE
WHERE
cr.isdelete = '0'
AND cr.FINISHED = '1'
AND cr.ISSTATISTICS = '1'
AND cr.CHECK_TIME BETWEEN #{STARTTIME} and #{ENDTIME}
group by c.USER_ID
) che on che.USER_ID = u.USER_ID
where
u.ISDELETE = 0
</select>
</mapper>