From 1810e0bf8148eff5296cc1aa2b6a45e463f3c509 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Mon, 22 Aug 2022 15:28:46 +0800
Subject: [PATCH] 添加任务状态过滤,和创建用户过滤

---
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml |   38 ++++++++++++++++++++++++++++++--------
 1 files changed, 30 insertions(+), 8 deletions(-)

diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
index 09704bd..b8040be 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -32,9 +32,15 @@
         LEFT JOIN sys_land l ON t.land_id = l.id
         LEFT JOIN sys_stockfactory f ON f.id=t.stock_id
         LEFT JOIN blade_user u ON u.id=t.task_user
-        where t.is_deleted = 0 and t.status=#{task.status}
+        where t.is_deleted = 0
         <if test="task.taskUser!=null and task.taskUser!=''">
             and t.task_user=#{task.taskUser}
+        </if>
+        <if test="task.status!=null and task.status!='' or task.status == 0 " >
+            and t.status=#{task.status}
+        </if>
+        <if test="task.farmId!=null and task.farmId!=''">
+            and l.farm_id = #{task.farmId}
         </if>
         <if test="task.User!=null and task.User!=''">
             and t.create_user=#{task.User}
@@ -174,12 +180,28 @@
     </select>
 
     <select id="countTaskNum" resultType="java.util.HashMap">
-        SELECT
-        date_format( time , '%Y-%m' ) AS y,
-	    count( * ) AS count
-        FROM
-            sys_task
-        WHERE 1=1 and YEAR (time)=#{year}
-        GROUP BY y;
+    SELECT count( * ) AS count FROM sys_task st
+    left join sys_land sl on sl.id = st.land_id
+    WHERE 1 = 1
+        AND st.STATUS = '0'
+        AND st.create_time like concat('%',#{task.year},'%')
+        AND sl.farm_id = #{task.farmId}
+    UNION ALL
+    SELECT count( * ) AS count FROM sys_task st
+    left join sys_land sl on sl.id = st.land_id
+    WHERE
+        1 = 1
+        AND ( st.STATUS = '1' OR st.STATUS = '2' )
+        AND  st.create_time like concat('%',#{task.year},'%')
+        AND sl.farm_id = #{task.farmId}
+    UNION ALL
+    SELECT count( * ) AS count FROM sys_task st
+    left join sys_land sl on sl.id = st.land_id
+    WHERE
+        1 = 1
+        AND ( st.STATUS = '1' OR st.STATUS = '2' )
+        AND  st.create_time like concat('%',#{task.year},'%')
+        AND now() > st.time
+        AND sl.farm_id = #{task.farmId}
     </select>
 </mapper>

--
Gitblit v1.9.3