From 72b971c98c46531064d74b68fc8fe8864ed0b544 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 08 Nov 2022 09:04:56 +0800
Subject: [PATCH] 大屏溯源统计次数sql修改

---
 src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml |   67 ++++++++++++++++++++++++++++-----
 1 files changed, 57 insertions(+), 10 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..7d1aba6 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -26,19 +26,33 @@
 
 
     <select id="selectTaskPage" resultMap="taskResultMap">
-        select t.*, l.land_name as landname,f.agricultural_name as argname,
+        select t.*, l.land_name as landname,
+        f.agricultural_name as argname,
+        s.specs1,
+        d.dict_value specsVal1,
+        c.dict_value specsVal2,
         u.real_name as reaname
         from sys_task t
         LEFT JOIN sys_land l ON t.land_id = l.id
-        LEFT JOIN sys_stockfactory f ON f.id=t.stock_id
+        LEFT JOIN sys_soldr s ON s.id = t.stock_id
+        LEFT JOIN sys_stockfactory f ON f.id = s.stock_id1
+        LEFT JOIN (SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockSpecs1' AND is_deleted = 0) d ON d.dict_key = s.specs_val1
+        LEFT JOIN (SELECT dict_key, dict_value FROM blade_dict_biz WHERE CODE = 'stockSpecs2' AND is_deleted = 0) c ON c.dict_key = s.specs_val2
         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,12 +188,45 @@
     </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}
+        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 ( 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 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 ( 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