|
|
|
|
@ -3,137 +3,142 @@
|
|
|
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" |
|
|
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|
|
|
|
<mapper namespace="com.biutag.supervision.mapper.NegativeMapper"> |
|
|
|
|
<select id="getSupervisionTrend" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT m.monthName AS `name`, IFNULL(COUNT(ng.discoveryTime), 0) AS `value` |
|
|
|
|
FROM ( |
|
|
|
|
SELECT '01' AS month, '1月' AS monthName UNION ALL |
|
|
|
|
SELECT '02', '2月' UNION ALL |
|
|
|
|
SELECT '03', '3月' UNION ALL |
|
|
|
|
SELECT '04', '4月' UNION ALL |
|
|
|
|
SELECT '05', '5月' UNION ALL |
|
|
|
|
SELECT '06', '6月' UNION ALL |
|
|
|
|
SELECT '07', '7月' UNION ALL |
|
|
|
|
SELECT '08', '8月' UNION ALL |
|
|
|
|
SELECT '09', '9月' UNION ALL |
|
|
|
|
SELECT '10', '10月' UNION ALL |
|
|
|
|
SELECT '11', '11月' UNION ALL |
|
|
|
|
SELECT '12', '12月' ) m LEFT JOIN negative ng |
|
|
|
|
ON DATE_FORMAT(ng.discoveryTime, '%m') = m.month |
|
|
|
|
AND YEAR(ng.discoveryTime) = #{time} |
|
|
|
|
AND ng.checkStatus != 3 |
|
|
|
|
AND ng.problemSourcesCode IN (13, 15) |
|
|
|
|
GROUP BY m.monthName |
|
|
|
|
<!-- 首页大屏 --> |
|
|
|
|
<select id="getGlobalRecentlyTrendByMonth" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT m.month_name AS `name`, IFNULL(COUNT(ng.id), 0) AS `value` |
|
|
|
|
FROM sup_month_monthname m |
|
|
|
|
LEFT JOIN negative ng ON DATE_FORMAT(ng.discoveryTime, '%m') = m.month |
|
|
|
|
AND YEAR(ng.discoveryTime) = #{year} |
|
|
|
|
AND checkStatus != 3 |
|
|
|
|
GROUP BY m.month_name |
|
|
|
|
ORDER BY m.month ASC; |
|
|
|
|
</select> |
|
|
|
|
<!-- 视频督察大屏问题趋势 --> |
|
|
|
|
<select id="getVideoSuperviseTrend" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT |
|
|
|
|
m.monthName AS `name`, |
|
|
|
|
IFNULL(COUNT(ng.discoveryTime), 0) AS `value` |
|
|
|
|
FROM ( |
|
|
|
|
SELECT '01' AS month, '1月' AS monthName UNION ALL |
|
|
|
|
SELECT '02', '2月' UNION ALL |
|
|
|
|
SELECT '03', '3月' UNION ALL |
|
|
|
|
SELECT '04', '4月' UNION ALL |
|
|
|
|
SELECT '05', '5月' UNION ALL |
|
|
|
|
SELECT '06', '6月' UNION ALL |
|
|
|
|
SELECT '07', '7月' UNION ALL |
|
|
|
|
SELECT '08', '8月' UNION ALL |
|
|
|
|
SELECT '09', '9月' UNION ALL |
|
|
|
|
SELECT '10', '10月' UNION ALL |
|
|
|
|
SELECT '11', '11月' UNION ALL |
|
|
|
|
SELECT '12', '12月' |
|
|
|
|
) m |
|
|
|
|
LEFT JOIN |
|
|
|
|
negative ng on DATE_FORMAT(ng.discoveryTime, '%m')=m.month |
|
|
|
|
AND YEAR(ng.discoveryTime)= #{year} |
|
|
|
|
AND checkStatus!=3 |
|
|
|
|
AND ng.problemSourcesCode =16 |
|
|
|
|
GROUP BY |
|
|
|
|
m.monthName |
|
|
|
|
ORDER BY |
|
|
|
|
m.month ASC; |
|
|
|
|
SELECT m.month_name AS `name`, IFNULL(COUNT(ng.id), 0) AS `value` |
|
|
|
|
FROM sup_month_monthname m |
|
|
|
|
LEFT JOIN negative ng ON DATE_FORMAT(ng.discoveryTime, '%m') = m.month |
|
|
|
|
AND YEAR(ng.discoveryTime) = #{year} |
|
|
|
|
AND ng.checkStatus != 3 |
|
|
|
|
AND ng.problemSourcesCode = |
|
|
|
|
<foreach item="item" index="index" collection="args" open="(" separator="," close=")">#{item}</foreach> |
|
|
|
|
GROUP BY m.month_name |
|
|
|
|
ORDER BY m.month ASC; |
|
|
|
|
|
|
|
|
|
</select> |
|
|
|
|
<select id="getGobalRecentlyTrendByMonth" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT |
|
|
|
|
m.monthName AS `name`, |
|
|
|
|
IFNULL(COUNT(ng.discoveryTime), 0) AS `value` |
|
|
|
|
FROM ( |
|
|
|
|
SELECT '01' AS month, '1月' AS monthName UNION ALL |
|
|
|
|
SELECT '02', '2月' UNION ALL |
|
|
|
|
SELECT '03', '3月' UNION ALL |
|
|
|
|
SELECT '04', '4月' UNION ALL |
|
|
|
|
SELECT '05', '5月' UNION ALL |
|
|
|
|
SELECT '06', '6月' UNION ALL |
|
|
|
|
SELECT '07', '7月' UNION ALL |
|
|
|
|
SELECT '08', '8月' UNION ALL |
|
|
|
|
SELECT '09', '9月' UNION ALL |
|
|
|
|
SELECT '10', '10月' UNION ALL |
|
|
|
|
SELECT '11', '11月' UNION ALL |
|
|
|
|
SELECT '12', '12月' |
|
|
|
|
) m |
|
|
|
|
LEFT JOIN |
|
|
|
|
negative ng on DATE_FORMAT(ng.discoveryTime, '%m')=m.month |
|
|
|
|
AND YEAR(ng.discoveryTime)=#{year} |
|
|
|
|
AND checkStatus!=3 |
|
|
|
|
GROUP BY |
|
|
|
|
m.monthName |
|
|
|
|
ORDER BY |
|
|
|
|
m.month ASC; |
|
|
|
|
<!-- 现场督察大屏问题趋势 --> |
|
|
|
|
<select id="getSupervisionTrend" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT m.month_name AS `name`, IFNULL(COUNT(ng.id), 0) AS `value` |
|
|
|
|
FROM sup_month_monthname m |
|
|
|
|
LEFT JOIN negative ng ON DATE_FORMAT(ng.discoveryTime, '%m') = m.month |
|
|
|
|
AND YEAR(ng.discoveryTime) = #{time} |
|
|
|
|
AND ng.checkStatus != 3 |
|
|
|
|
AND ng.problemSourcesCode IN |
|
|
|
|
<foreach item="item" index="index" collection="args" open="(" separator="," close=")">#{item}</foreach> |
|
|
|
|
GROUP BY m.month_name |
|
|
|
|
ORDER BY m.month ASC; |
|
|
|
|
|
|
|
|
|
</select> |
|
|
|
|
<!-- 案件核查 --> |
|
|
|
|
<select id="getCaseVerificationTrend" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT |
|
|
|
|
m.monthName AS `name`, |
|
|
|
|
IFNULL(COUNT(ng.discoveryTime), 0) AS `value` |
|
|
|
|
FROM ( |
|
|
|
|
SELECT '01' AS month, '1月' AS monthName UNION ALL |
|
|
|
|
SELECT '02', '2月' UNION ALL |
|
|
|
|
SELECT '03', '3月' UNION ALL |
|
|
|
|
SELECT '04', '4月' UNION ALL |
|
|
|
|
SELECT '05', '5月' UNION ALL |
|
|
|
|
SELECT '06', '6月' UNION ALL |
|
|
|
|
SELECT '07', '7月' UNION ALL |
|
|
|
|
SELECT '08', '8月' UNION ALL |
|
|
|
|
SELECT '09', '9月' UNION ALL |
|
|
|
|
SELECT '10', '10月' UNION ALL |
|
|
|
|
SELECT '11', '11月' UNION ALL |
|
|
|
|
SELECT '12', '12月' |
|
|
|
|
) m |
|
|
|
|
LEFT JOIN |
|
|
|
|
negative ng on DATE_FORMAT(ng.discoveryTime, '%m')=m.month |
|
|
|
|
AND YEAR(ng.discoveryTime)= #{year} |
|
|
|
|
AND checkStatus!=3 |
|
|
|
|
AND ng.problemSourcesCode IN (17, 18, 19, 20) |
|
|
|
|
GROUP BY |
|
|
|
|
m.monthName |
|
|
|
|
ORDER BY |
|
|
|
|
m.month ASC; |
|
|
|
|
SELECT m.month_name AS `name`, IFNULL(COUNT(ng.id), 0) AS `value` |
|
|
|
|
FROM sup_month_monthname m |
|
|
|
|
LEFT JOIN negative ng ON DATE_FORMAT(ng.discoveryTime, '%m') = m.month |
|
|
|
|
AND YEAR(ng.discoveryTime) = #{year} |
|
|
|
|
AND ng.checkStatus != 3 |
|
|
|
|
AND ng.problemSourcesCode IN |
|
|
|
|
<foreach item="item" index="index" collection="args" open="(" separator="," close=")">#{item}</foreach> |
|
|
|
|
GROUP BY m.month_name |
|
|
|
|
ORDER BY m.month ASC; |
|
|
|
|
</select> |
|
|
|
|
<!-- 信访投诉大屏问题趋势 --> |
|
|
|
|
<select id="getMailTrend" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT |
|
|
|
|
m.monthName AS `name`, |
|
|
|
|
IFNULL(COUNT(dpc.discovery_time), 0) AS `value` |
|
|
|
|
FROM ( |
|
|
|
|
SELECT '01' AS month, '1月' AS monthName UNION ALL |
|
|
|
|
SELECT '02', '2月' UNION ALL |
|
|
|
|
SELECT '03', '3月' UNION ALL |
|
|
|
|
SELECT '04', '4月' UNION ALL |
|
|
|
|
SELECT '05', '5月' UNION ALL |
|
|
|
|
SELECT '06', '6月' UNION ALL |
|
|
|
|
SELECT '07', '7月' UNION ALL |
|
|
|
|
SELECT '08', '8月' UNION ALL |
|
|
|
|
SELECT '09', '9月' UNION ALL |
|
|
|
|
SELECT '10', '10月' UNION ALL |
|
|
|
|
SELECT '11', '11月' UNION ALL |
|
|
|
|
SELECT '12', '12月' |
|
|
|
|
) m LEFT JOIN |
|
|
|
|
data_petition_complaint dpc on DATE_FORMAT(dpc.discovery_time, '%m')=m.month |
|
|
|
|
AND YEAR(dpc.discovery_time)=#{year} |
|
|
|
|
AND dpc.problem_sources_code = #{type} |
|
|
|
|
GROUP BY |
|
|
|
|
m.monthName |
|
|
|
|
ORDER BY |
|
|
|
|
m.month ASC; |
|
|
|
|
|
|
|
|
|
SELECT m.monthName AS `name`, |
|
|
|
|
IFNULL(COUNT(dpc.discovery_time), 0) AS `value` |
|
|
|
|
FROM (SELECT '01' AS month, '1月' AS monthName |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '02', '2月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '03', '3月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '04', '4月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '05', '5月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '06', '6月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '07', '7月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '08', '8月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '09', '9月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '10', '10月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '11', '11月' |
|
|
|
|
UNION ALL |
|
|
|
|
SELECT '12', '12月') m |
|
|
|
|
LEFT JOIN |
|
|
|
|
data_petition_complaint dpc on DATE_FORMAT(dpc.discovery_time, '%m') = m.month |
|
|
|
|
AND YEAR(dpc.discovery_time) = #{year} |
|
|
|
|
AND dpc.problem_sources_code = #{type} |
|
|
|
|
GROUP BY m.monthName |
|
|
|
|
ORDER BY m.month ASC; |
|
|
|
|
</select> |
|
|
|
|
<!-- 首页一级子屏的问题趋势 --> |
|
|
|
|
<select id="getSubOneTrend" resultType="com.biutag.supervision.pojo.vo.EchartsVo"> |
|
|
|
|
SELECT m.month_name AS `name`, IFNULL(temp.`value`, 0) AS `value` |
|
|
|
|
FROM sup_month_monthname m |
|
|
|
|
LEFT JOIN |
|
|
|
|
( |
|
|
|
|
SELECT DATE_FORMAT(ng.discoveryTime, '%m') as `month`, COUNT(ng.id) AS `value` |
|
|
|
|
FROM negative ng LEFT JOIN sup_depart sd on ng.involveDepartId = sd.id |
|
|
|
|
WHERE YEAR(ng.discoveryTime) = #{year} AND checkStatus != 3 |
|
|
|
|
AND ng.problemSourcesCode IN |
|
|
|
|
<foreach item="item" index="index" collection="args" open="(" separator="," close=")">#{item}</foreach> |
|
|
|
|
AND sd.pid = #{departPId} |
|
|
|
|
GROUP BY DATE_FORMAT(ng.discoveryTime, '%m') |
|
|
|
|
) as temp |
|
|
|
|
ON temp.`month` = m.`month` |
|
|
|
|
ORDER BY m.month ASC; |
|
|
|
|
</select> |
|
|
|
|
<!-- 首页一级子屏的案件核查排行 --> |
|
|
|
|
<select id="getCaseVerifyRank" resultType="com.biutag.supervision.pojo.vo.RankVo"> |
|
|
|
|
SELECT temp.short_name AS label, |
|
|
|
|
temp.id AS departId, |
|
|
|
|
COUNT(IF(checkIdCode != 3, checkIdCode, NULL)) AS numerator, |
|
|
|
|
COUNT(DISTINCT ng.id) AS denominator, |
|
|
|
|
COUNT(DISTINCT ng.id) AS `value` |
|
|
|
|
FROM negative ng |
|
|
|
|
INNER JOIN |
|
|
|
|
(SELECT id, short_name FROM sup_depart sd |
|
|
|
|
WHERE sd.pid = #{departPId} |
|
|
|
|
<if test="statisticsGroupId != 0">AND statistics_group_id = #{statisticsGroupId}</if> |
|
|
|
|
<if test="statisticsGroupId == 0">AND statistics_group_id != 10</if> |
|
|
|
|
) AS temp |
|
|
|
|
ON ng.involveDepartId = temp.id |
|
|
|
|
WHERE ng.problemSourcesCode IN |
|
|
|
|
<foreach collection="args" item="arg" open="(" separator="," close=")">#{arg}</foreach> |
|
|
|
|
AND discoveryTime BETWEEN #{beginTime} AND #{endTime} |
|
|
|
|
GROUP BY temp.short_name |
|
|
|
|
ORDER BY denominator DESC; |
|
|
|
|
</select> |
|
|
|
|
<!-- 首页一级子屏的案件核查总览 --> |
|
|
|
|
<select id="getCaseVerifyOverView" resultType="com.biutag.supervision.pojo.vo.SubOneOverViewVo"> |
|
|
|
|
SELECT COUNT(DISTINCT ng.id) as one, |
|
|
|
|
COUNT( IF(checkIdCode!=3,checkIdCode,NULL)) AS two, |
|
|
|
|
COALESCE(ROUND(COUNT(IF(checkIdCode != 3, checkIdCode, NULL)) / NULLIF(COUNT(DISTINCT ng.id), 0) * 100, 1), 0) |
|
|
|
|
AS three |
|
|
|
|
FROM negative ng INNER JOIN |
|
|
|
|
(SELECT id, short_name FROM sup_depart sd |
|
|
|
|
WHERE sd.pid = #{departPId} |
|
|
|
|
<if test="statisticsGroupId != 0">AND statistics_group_id = #{statisticsGroupId}</if> |
|
|
|
|
<if test="statisticsGroupId == 0">AND statistics_group_id != 10</if> |
|
|
|
|
) AS temp |
|
|
|
|
ON ng.involveDepartId = temp.id |
|
|
|
|
WHERE ng.problemSourcesCode IN |
|
|
|
|
<foreach collection="args" item="arg" open="(" separator="," close=")">#{arg}</foreach> |
|
|
|
|
AND discoveryTime BETWEEN #{beginTime} AND #{endTime}; |
|
|
|
|
|
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|