|
|
|
|
@ -83,18 +83,40 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
|
|
|
|
|
<if test="deptId != null and deptId != ''"> and a.category='2' and b.second_dept_id=#{deptId} GROUP BY second_dept_name</if> |
|
|
|
|
</select> |
|
|
|
|
<!-- <select id="getAllCompletedRate" resultType="java.util.Map">--> |
|
|
|
|
<!-- select CONCAT(ROUND(sum(COALESCE(b.completed, 0))*100/count(1),0),'%') completedRate,SUM(COALESCE(b.completed, 0)) completed,count(1) completedSum--> |
|
|
|
|
<!-- from mail_mark b left join dept a on a.id=b.second_dept_id where 1=1--> |
|
|
|
|
|
|
|
|
|
<!-- <if test="deptId != null and deptId != ''"> and a.category='2' and b.second_dept_id=#{deptId} GROUP BY second_dept_name</if>--> |
|
|
|
|
<!-- </select>--> |
|
|
|
|
<select id="getAllCompletedRate" resultType="java.util.Map"> |
|
|
|
|
select CONCAT(ROUND(sum(COALESCE(b.completed, 0))*100/count(1),0),'%') completedRate,SUM(COALESCE(b.completed, 0)) completed,count(1) completedSum |
|
|
|
|
select |
|
|
|
|
CONCAT(ROUND(SUM(COALESCE(b.resolved, 0))*100 / NULLIF(SUM(CASE WHEN b.completed = '1' THEN 1 ELSE 0 END), 0),0),'%') AS completedRate, |
|
|
|
|
SUM(COALESCE(b.resolved, 0)) AS completed, |
|
|
|
|
SUM(CASE WHEN b.completed = '1' THEN 1 ELSE 0 END) AS completedSum |
|
|
|
|
|
|
|
|
|
from mail_mark b left join dept a on a.id=b.second_dept_id where 1=1 |
|
|
|
|
|
|
|
|
|
<if test="deptId != null and deptId != ''"> and a.category='2' and b.second_dept_id=#{deptId} GROUP BY second_dept_name</if> |
|
|
|
|
</select> |
|
|
|
|
<select id="getAllSatisfiedRate" resultType="java.util.Map"> |
|
|
|
|
select CONCAT(ROUND(sum(COALESCE(b.satisfied, 0))*100/count(1),0),'%') satisfiedRate,SUM(COALESCE(b.satisfied, 0)) satisfied,count(1) satisfiedSum |
|
|
|
|
from mail_mark b left join dept a on a.id=b.second_dept_id where 1=1 |
|
|
|
|
<!-- <select id="getAllSatisfiedRate" resultType="java.util.Map">--> |
|
|
|
|
<!-- select CONCAT(ROUND(sum(COALESCE(b.satisfied, 0))*100/count(1),0),'%') satisfiedRate,SUM(COALESCE(b.satisfied, 0)) satisfied,count(1) satisfiedSum--> |
|
|
|
|
<!-- from mail_mark b left join dept a on a.id=b.second_dept_id where 1=1--> |
|
|
|
|
|
|
|
|
|
<if test="deptId != null and deptId != ''"> and a.category='2' and b.second_dept_id=#{deptId} GROUP BY second_dept_name</if> |
|
|
|
|
<!-- <if test="deptId != null and deptId != ''"> and a.category='2' and b.second_dept_id=#{deptId} GROUP BY second_dept_name</if>--> |
|
|
|
|
<!-- </select>--> |
|
|
|
|
<select id="getAllSatisfiedRate" resultType="java.util.Map"> |
|
|
|
|
select |
|
|
|
|
CONCAT(ROUND(SUM(COALESCE(b.satisfied, 0))*100 / NULLIF(SUM(CASE WHEN b.completed = '1' THEN 1 ELSE 0 END), 0),0),'%') AS satisfiedRate, |
|
|
|
|
SUM(COALESCE(b.satisfied, 0)) AS satisfied, |
|
|
|
|
SUM(CASE WHEN b.completed = '1' THEN 1 ELSE 0 END) AS satisfiedSum |
|
|
|
|
from mail_mark b left join dept a on a.id=b.second_dept_id where 1=1 |
|
|
|
|
<if test="deptId != null and deptId != ''"> |
|
|
|
|
and a.category='2' and b.second_dept_id=#{deptId} GROUP BY second_dept_name |
|
|
|
|
</if> |
|
|
|
|
</select> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<select id="mailTypeRank" resultType="java.util.Map" parameterType="java.util.Map"> |
|
|
|
|
select ROW_NUMBER() OVER (ORDER BY sumCount desc) AS rowNumber , |
|
|
|
|
mail_first_category category,count(1) sumCount , |
|
|
|
|
@ -154,23 +176,47 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
|
|
|
</if> |
|
|
|
|
GROUP BY month order by month |
|
|
|
|
</select> |
|
|
|
|
<select id="mapData" resultType="java.util.Map"> |
|
|
|
|
select d.name, a.id, |
|
|
|
|
(select count(1) mailCount from mail c where c.create_time>=CURRENT_DATE and c.second_dept_id=a.id) todaysum , |
|
|
|
|
CONCAT(ROUND(sum(COALESCE(b.resolved, 0))*100/count(1),0),'%') resolvedRate, |
|
|
|
|
SUM(COALESCE(b.resolved, 0)) resolved, |
|
|
|
|
ROUND(sum(COALESCE(b.completed, 0))*100/count(b.mail_id),0) value, |
|
|
|
|
CONCAT(ROUND(sum(COALESCE(b.completed, 0))*100/count(b.mail_id),0),'%') completedRate, |
|
|
|
|
SUM(COALESCE(b.completed, 0)) completed, |
|
|
|
|
CONCAT(ROUND(sum(COALESCE(b.satisfied, 0))*100/count(1),0),'%') satisfiedRate, |
|
|
|
|
SUM(COALESCE(b.satisfied, 0)) satisfied, |
|
|
|
|
count(1) allsum |
|
|
|
|
from mail_mark b left join dept a on a.id=b.second_dept_id |
|
|
|
|
inner join county_street_dept d on b.second_dept_id=d.dept_id |
|
|
|
|
where 1=1 |
|
|
|
|
<if test="deptId != null and deptId != ''"> and b.second_dept_id=#{deptId}</if> |
|
|
|
|
GROUP BY d.name,a.id |
|
|
|
|
<!-- <select id="mapData" resultType="java.util.Map">--> |
|
|
|
|
<!-- select d.name, a.id,--> |
|
|
|
|
<!-- (select count(1) mailCount from mail c where c.create_time>=CURRENT_DATE and c.second_dept_id=a.id) todaysum ,--> |
|
|
|
|
<!-- CONCAT(ROUND(sum(COALESCE(b.resolved, 0))*100/count(1),0),'%') resolvedRate,--> |
|
|
|
|
<!-- SUM(COALESCE(b.resolved, 0)) resolved,--> |
|
|
|
|
<!-- ROUND(sum(COALESCE(b.completed, 0))*100/count(b.mail_id),0) value,--> |
|
|
|
|
<!-- CONCAT(ROUND(sum(COALESCE(b.completed, 0))*100/count(b.mail_id),0),'%') completedRate,--> |
|
|
|
|
<!-- SUM(COALESCE(b.completed, 0)) completed,--> |
|
|
|
|
<!-- CONCAT(ROUND(sum(COALESCE(b.satisfied, 0))*100/count(1),0),'%') satisfiedRate,--> |
|
|
|
|
<!-- SUM(COALESCE(b.satisfied, 0)) satisfied,--> |
|
|
|
|
<!-- count(1) allsum--> |
|
|
|
|
<!-- from mail_mark b left join dept a on a.id=b.second_dept_id--> |
|
|
|
|
<!-- inner join county_street_dept d on b.second_dept_id=d.dept_id--> |
|
|
|
|
<!-- where 1=1--> |
|
|
|
|
<!-- <if test="deptId != null and deptId != ''"> and b.second_dept_id=#{deptId}</if>--> |
|
|
|
|
<!-- GROUP BY d.name,a.id--> |
|
|
|
|
|
|
|
|
|
<!-- </select>--> |
|
|
|
|
<select id="mapData" resultType="java.util.Map"> |
|
|
|
|
SELECT d.name, a.id, |
|
|
|
|
( |
|
|
|
|
SELECT COUNT(1) |
|
|
|
|
FROM mail c |
|
|
|
|
WHERE c.create_time >= CURRENT_DATE |
|
|
|
|
AND c.second_dept_id = a.id |
|
|
|
|
) AS todaysum, |
|
|
|
|
CONCAT(ROUND(SUM(COALESCE(b.resolved, 0)) * 100 / NULLIF(COUNT(1), 0),0), '%') AS resolvedRate, |
|
|
|
|
SUM(COALESCE(b.resolved, 0)) AS resolved, |
|
|
|
|
ROUND(SUM(COALESCE(b.completed, 0)) * 100 / NULLIF(COUNT(b.mail_id), 0),0) AS value, |
|
|
|
|
CONCAT(ROUND(SUM(COALESCE(b.completed, 0)) * 100 / NULLIF(COUNT(b.mail_id), 0),0), '%') AS completedRate, |
|
|
|
|
SUM(COALESCE(b.completed, 0)) AS completed, |
|
|
|
|
CONCAT(ROUND(SUM(COALESCE(b.satisfied, 0)) * 100 / NULLIF(COUNT(1), 0),0), '%') AS satisfiedRate, |
|
|
|
|
SUM(COALESCE(b.satisfied, 0)) AS satisfied, |
|
|
|
|
COUNT(b.second_dept_id) AS allsum |
|
|
|
|
FROM |
|
|
|
|
mail_mark b |
|
|
|
|
RIGHT JOIN dept a ON a.id = b.second_dept_id |
|
|
|
|
left join county_street_dept d on a.id=d.dept_id |
|
|
|
|
WHERE |
|
|
|
|
a.level = 2 AND a.category = 2 |
|
|
|
|
GROUP BY d.name, a.id |
|
|
|
|
</select> |
|
|
|
|
<select id="currentCountyMapJSON" resultType="java.util.Map" parameterType="java.lang.String"> |
|
|
|
|
select geometry from county_street_dept where 1=1 |
|
|
|
|
|