From 7a852f6db3d9bb3908d55f0a49ff9e92b4062621 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Tue, 22 Feb 2022 21:00:28 +0800
Subject: [PATCH] 问题修复
---
src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml | 29 +++++++++++++++++++++++------
1 files changed, 23 insertions(+), 6 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 ab713c5..e1b8270 100644
--- a/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
+++ b/src/main/java/org/springblade/modules/taskqd/mapper/TaskqdMapper.xml
@@ -38,6 +38,11 @@
</if>
where id = #{id}
</update>
+ <update id="updateRtype">
+ update sys_taskqd
+ SET rtype=#{type}
+ where id = #{rid}
+ </update>
<!--日常任务列表-->
@@ -55,20 +60,32 @@
<select id="selectLi" resultMap="taskResultMap">
SELECT A.*,IFNULL(B.num,0) as nums FROM (
- select qd.* from sys_taskqd LEFT JOIN sys_jurisdiction j ON j.id = qd.jurisdiction where 1=1
+ select qd.* from sys_taskqd qd LEFT JOIN sys_jurisdiction j ON j.id = qd.jurisdiction where 1=1 AND
<if test="type==0">
- and find_in_set(#{serid}, serid)) A LEFT JOIN (SELECT COUNT(*) as num,hdid,serid FROM sys_taskfk WHERE
+ find_in_set(#{serid}, serid)) 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">
- and id NOT IN ( SELECT id FROM sys_taskqd WHERE find_in_set(#{serid}, serid ))
- <if test="jurisdiction!=null and jurisdiction!=''">
+ <if test="jurisdiction!='1372091709474910209'">
+ qd.jnum!=qd.num AND qd.rtype = "2"
+ and (!find_in_set(#{serid}, serid) OR serid IS NULL )
and (j.id =#{jurisdiction} or
- j.parent_id = #{jurisdiction}) AND qd.jnum!=qd.num
+ j.parent_id = #{jurisdiction})
</if>
) 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
+ as num,hdid FROM sys_taskfk GROUP BY hdid) B ON A.id=B.hdid
</if>
</select>
+
+ <select id="selectNum" resultType="java.lang.Integer">
+ SELECT COUNT(*) as num
+ 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})
+ </select>
</mapper>
--
Gitblit v1.9.3