From fa326e87de2805d8b66b301daee596b1d959e430 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Thu, 15 Sep 2022 11:42:45 +0800
Subject: [PATCH] 出入库记录删除回滚逻辑修改

---
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml |   62 +++++++++++++++++++++----------
 1 files changed, 42 insertions(+), 20 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 f720add..b2b206a 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -32,13 +32,20 @@
         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}
         </if>
+        ORDER BY t.create_time DESC
     </select>
 
     <!--统计待处理任务数量-->
@@ -174,30 +181,45 @@
     </select>
 
     <select id="countTaskNum" resultType="java.util.HashMap">
-    SELECT
-        count( * ) AS count
-    FROM
-        sys_task
+    <!--已完成 -->
+    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}
+        AND st.is_deleted = 0
+    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 STATUS = '0'
-        AND create_time like concat('%',#{year},'%') UNION ALL
-    SELECT
-        count( * ) AS count
-    FROM
-        sys_task
+        AND ( st.STATUS = '1' OR st.STATUS = '2' )
+        AND  st.create_time like concat('%',#{task.year},'%')
+        AND sl.farm_id = #{task.farmId}
+        AND st.is_deleted = 0
+    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 ( STATUS = '1' OR STATUS = '2' )
-        AND  create_time like concat('%',#{year},'%') UNION ALL
-    SELECT
-        count( * ) AS count
-    FROM
-        sys_task
+        AND st.STATUS = '0'
+        AND  st.create_time like concat('%',#{task.year},'%')
+        AND st.update_time > DATE_ADD(st.time,INTERVAL 1 DAY)
+        AND sl.farm_id = #{task.farmId}
+        AND st.is_deleted = 0
+    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 ( STATUS = '1' OR STATUS = '2' )
-        AND  create_time like concat('%',#{year},'%')
-        AND now( ) > time
+        AND ( st.STATUS = '1' OR st.STATUS = '2' )
+        AND st.create_time like concat('%',#{task.year},'%')
+        AND now() > DATE_ADD(st.time,INTERVAL 1 DAY)
+        AND sl.farm_id = #{task.farmId}
+        AND st.is_deleted = 0
     </select>
 </mapper>

--
Gitblit v1.9.3