From 4bd8f5572e62c39225da1d53e6cd101796dc90d8 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 19 Jul 2022 09:02:53 +0800
Subject: [PATCH] 积分排行榜前十展示/根据派出所,日周月展示前15任务
---
src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 101 insertions(+), 14 deletions(-)
diff --git a/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml b/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
index 85052d2..5d55aff 100644
--- a/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
+++ b/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
@@ -49,19 +49,65 @@
where id = #{rid}
</update>
+ <update id="updateSerid">
+ update sys_taskqd
+ SET serid=#{serid},team=#{newteam},num=#{newnum}
+ where id = #{rid}
+ </update>
<!--日常任务列表-->
+ <select id="getlist" resultMap="taskResultMap">
+ SELECT
+ *
+ FROM
+ sys_taskqd
+ WHERE
+ serid LIKE concat("%",#{id},"%")
+ <if test="type == 3">
+ and rtype = 1
+ </if>
+ <if test="type == 2">
+ AND ( rtype = "0" OR rtype = "2" )
+ </if>
+ </select>
+
+ <!--任务统计-->
<select id="selectList" resultMap="taskResultMap">
- select jnum, num, serid, team
+ select jnum, num, serid, team ,time,endtime
from sys_taskqd
where id = #{id}
</select>
+ <select id="taskCount" resultType="java.util.HashMap">
+ SELECT
+ count( * ) AS count
+ FROM
+ sys_taskqd
+ WHERE
+ serid LIKE concat("%",#{id},"%")
+ AND rtype = "1" UNION ALL
+ SELECT
+ count( * ) AS count
+ FROM
+ sys_taskqd
+ WHERE
+ serid LIKE concat("%",#{id},"%")
+ AND ( rtype = "0" OR rtype = "2" )
+ </select>
+ <select id="allTask" resultType="java.util.HashMap">
+ SELECT
+ *
+ FROM
+ sys_taskqd
+ WHERE 1 = 1
+ AND ( rtype = "0" OR rtype = "2" )
+
+ </select>
<select id="queryReceiver" resultType="java.util.HashMap">
- SELECT u.* ,
- r.role_name
- FROM blade_user
- LEFT JOIN ( SELECT id, role_name FROM blade_role ) r on u.role_id = r.id
+ SELECT u.*,
+ r.role_name
+ FROM blade_user u
+ LEFT JOIN (SELECT id, role_name FROM blade_role) r on u.role_id = r.id
WHERE u.id in (${serid})
</select>
@@ -69,15 +115,31 @@
SELECT A.*,IFNULL(B.num,0) as nums FROM (
select qd.* from sys_taskqd qd LEFT JOIN sys_jurisdiction j ON j.id = qd.jurisdiction where 1=1 AND
<if test="type==0">
- find_in_set(#{serid}, serid)) A LEFT JOIN (SELECT COUNT(*) as num,hdid,serid FROM sys_taskfk WHERE
+ (qd.rtype = "2" or qd.rtype = "0") AND
+ find_in_set(#{serid}, serid) and qd.tasktype=#{tasktype}) A LEFT JOIN (SELECT COUNT(*) as num,hdid,serid
+ FROM
+ sys_taskfk WHERE
+ serid=#{serid} GROUP BY hdid,serid) B ON A.id=B.hdid
+ </if>
+ <if test="type==2">
+ qd.rtype = "1" AND
+ find_in_set(#{serid}, serid) and qd.tasktype=#{tasktype}) A LEFT JOIN (SELECT COUNT(*) as num,hdid,serid
+ FROM
+ sys_taskfk WHERE
serid=#{serid} GROUP BY hdid,serid) B ON A.id=B.hdid
</if>
<if test="type==1">
<if test="jurisdiction!='1372091709474910209'">
- qd.jnum!=qd.num AND qd.rtype = "2"
+ <if test="tasktype !=2">
+ qd.jnum!=qd.num AND
+ </if>
+ qd.rtype = "2"
+ and qd.tasktype=#{tasktype}
and (!find_in_set(#{serid}, serid) OR serid IS NULL )
- and (j.id =#{jurisdiction} or
- j.parent_id = #{jurisdiction})
+ and
+ ((j.id =#{jurisdiction} or
+ j.parent_id = #{jurisdiction}) or (j.id =#{workjurisdiction} or
+ j.parent_id = #{workjurisdiction}))
</if>
) A LEFT JOIN (SELECT
COUNT(*)
@@ -86,17 +148,42 @@
</select>
<select id="selectNum" resultType="java.util.HashMap">
- SELECT COUNT(*) as num,tasktype
+ SELECT COUNT(*) as num, tasktype
FROM sys_taskqd qd
LEFT JOIN sys_jurisdiction j ON j.id = qd.jurisdiction
WHERE jnum!=num AND qd.rtype = "2" AND
- (!find_in_set(#{serid}, serid) OR serid IS NULL )
- and (j.id =#{jurisdiction} or j.parent_id = #{jurisdiction})
- or (j.id =#{workjurisdiction} or j.parent_id = #{workjurisdiction})
+ (!find_in_set(#{serid}
+ , serid)
+ OR serid IS NULL )
+ and ((j.id =#{jurisdiction}
+ or j.parent_id = #{jurisdiction})
+ or (j.id =#{workjurisdiction}
+ or j.parent_id = #{workjurisdiction}))
GROUP BY tasktype
</select>
<select id="querySerid" resultType="java.lang.String">
- SELECT serid from sys_taskqd where id = #{rid}
+ SELECT serid
+ from sys_taskqd
+ where id = #{rid}
+ </select>
+
+ <select id="countTaskByJur" resultType="org.springblade.modules.taskqd.entity.Taskqd">
+ SELECT *
+ FROM sys_taskqd qd
+ WHERE qd.jurisdiction = #{jurisdiction}
+ <choose>
+ <when test='period=="day" '>
+ AND TO_DAYS(qd.time) = TO_DAYS(#{startTime})
+ </when>
+ <when test='period == "week" '>
+ AND YEARWEEK(DATE_FORMAT(qd.time,"%Y-%m-%d"),1) = YEARWEEK(#{startTime},1)
+ </when>
+ <when test='period == "month" '>
+ AND DATE_FORMAT(qd.time,"%Y-%m") = DATE_FORMAT(#{startTime},"%Y-%m")
+ </when>
+ <when test='period == "all" '></when>
+ </choose>
+ LIMIT 0,15
</select>
</mapper>
--
Gitblit v1.9.3