From 3152a6a93337ba25815f7372c60dece41c3957d3 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 19 Jul 2022 11:29:05 +0800
Subject: [PATCH] 根据实际任务时长进行积分分配
---
src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml | 55 +++++++++++++++++++++++++++++++++++++++++++++++--------
1 files changed, 47 insertions(+), 8 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 e9b25bf..0177ebd 100644
--- a/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
+++ b/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
@@ -44,9 +44,12 @@
where id = #{id}
</update>
<update id="updateRtype">
- update sys_taskqd
- SET rtype=#{type}
- where id = #{rid}
+ UPDATE sys_taskqd
+ <set>
+ <if test='type == "0" '>rtype=#{type},stime = now(),</if>
+ <if test='type == "1" '>rtype=#{type},sendtime = now(),</if>
+ </set>
+ WHERE id = #{rid}
</update>
<update id="updateSerid">
@@ -73,7 +76,7 @@
<!--任务统计-->
<select id="selectList" resultMap="taskResultMap">
- select jnum, num, serid, team
+ select jnum, num, serid, team ,time,endtime
from sys_taskqd
where id = #{id}
</select>
@@ -92,6 +95,15 @@
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">
@@ -127,9 +139,10 @@
qd.rtype = "2"
and qd.tasktype=#{tasktype}
and (!find_in_set(#{serid}, serid) OR serid IS NULL )
- and (j.id =#{jurisdiction} or
+ and
+ ((j.id =#{jurisdiction} or
j.parent_id = #{jurisdiction}) or (j.id =#{workjurisdiction} or
- j.parent_id = #{workjurisdiction})
+ j.parent_id = #{workjurisdiction}))
</if>
) A LEFT JOIN (SELECT
COUNT(*)
@@ -145,10 +158,10 @@
(!find_in_set(#{serid}
, serid)
OR serid IS NULL )
- and (j.id =#{jurisdiction}
+ and ((j.id =#{jurisdiction}
or j.parent_id = #{jurisdiction})
or (j.id =#{workjurisdiction}
- or j.parent_id = #{workjurisdiction})
+ or j.parent_id = #{workjurisdiction}))
GROUP BY tasktype
</select>
@@ -157,4 +170,30 @@
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>
+
+ <select id="getRealTime" resultType="java.lang.Integer">
+ SELECT (UNIX_TIMESTAMP(sendtime)-UNIX_TIMESTAMP(stime))
+ subsecond
+ FROM sys_taskqd
+ WHERE id = #{hdid}
+ </select>
</mapper>
--
Gitblit v1.9.3