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 | 205 ++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 203 insertions(+), 2 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 57ea9d6..7d1aba6 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskMapper.xml
@@ -3,7 +3,7 @@
<mapper namespace="org.springblade.modules.task.mapper.TaskMapper">
<!-- 通用查询映射结果 -->
- <resultMap id="taskResultMap" type="org.springblade.modules.task.entity.Task">
+ <resultMap id="taskResultMap" type="org.springblade.modules.task.vo.TaskVO">
<result column="id" property="id"/>
<result column="create_user" property="createUser"/>
<result column="create_dept" property="createDept"/>
@@ -21,11 +21,212 @@
<result column="remark" property="remark"/>
<result column="tp" property="tp"/>
<result column="farm" property="farm"/>
+ <result column="landname" property="landname"/>
</resultMap>
<select id="selectTaskPage" resultMap="taskResultMap">
- select * from sys_task where is_deleted = 0
+ 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_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
+ <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>
+ <!--统计待处理任务数量-->
+ <select id="selectCount" resultType="java.lang.Integer">
+ SELECT COUNT(*)
+ FROM `sys_task`
+ WHERE status = 2
+ AND is_deleted = 0
+ AND task_user = #{taskuser}
+ </select>
+
+
+ <!--任务监管 code=1(当天)-->
+ <select id="selectTask" resultType="java.util.HashMap">
+ select a.order_hour as date, ifnull(b.num, 0) as num
+ from (
+ SELECT 0 AS order_hour UNION ALL SELECT 1 AS order_hour UNION ALL
+ SELECT 2 AS order_hour UNION ALL SELECT 3 AS order_hour UNION ALL
+ SELECT 4 AS order_hour UNION ALL SELECT 5 AS order_hour UNION ALL
+ SELECT 6 AS order_hour UNION ALL SELECT 7 AS order_hour UNION ALL
+ SELECT 8 AS order_hour UNION ALL SELECT 9 AS order_hour UNION ALL
+ SELECT 10 AS order_hour UNION ALL SELECT 11 AS order_hour UNION ALL
+ SELECT 12 AS order_hour UNION ALL SELECT 13 AS order_hour UNION ALL
+ SELECT 14 AS order_hour UNION ALL SELECT 15 AS order_hour UNION ALL
+ SELECT 16 AS order_hour UNION ALL SELECT 17 AS order_hour UNION ALL
+ SELECT 18 AS order_hour UNION ALL SELECT 19 AS order_hour UNION ALL
+ SELECT 20 AS order_hour UNION ALL SELECT 21 AS order_hour UNION ALL
+ SELECT 22 AS order_hour UNION ALL SELECT 23 AS order_hour
+ ) as a
+ LEFT JOIN
+ (
+ SELECT HOUR(create_time) AS order_hour, count(*) AS num FROM sys_task
+ WHERE create_time >= str_to_date('2022-06-29 00:00:00','%Y-%m-%d %T')
+ AND create_time<= str_to_date('2022-06-29 23:59:59','%Y-%m-%d %T')
+ GROUP BY order_hour
+ ) b ON a.order_hour=b.order_hour
+
+ ORDER BY order_hour;
+ </select>
+ <!--任务监管 code=2(当月)-->
+ <select id="selectM" resultType="java.util.HashMap">
+ SELECT lefttable.date,
+ IFNULL(righttable.m, '0') AS num
+ FROM (
+ SELECT ADDDATE(y.FIRST, x.d - 1) AS date
+ FROM
+ (
+ SELECT
+ 1 AS d UNION ALL
+ SELECT
+ 2 UNION ALL
+ SELECT
+ 3 UNION ALL
+ SELECT
+ 4 UNION ALL
+ SELECT
+ 5 UNION ALL
+ SELECT
+ 6 UNION ALL
+ SELECT
+ 7 UNION ALL
+ SELECT
+ 8 UNION ALL
+ SELECT
+ 9 UNION ALL
+ SELECT
+ 10 UNION ALL
+ SELECT
+ 11 UNION ALL
+ SELECT
+ 12 UNION ALL
+ SELECT
+ 13 UNION ALL
+ SELECT
+ 14 UNION ALL
+ SELECT
+ 15 UNION ALL
+ SELECT
+ 16 UNION ALL
+ SELECT
+ 17 UNION ALL
+ SELECT
+ 18 UNION ALL
+ SELECT
+ 19 UNION ALL
+ SELECT
+ 20 UNION ALL
+ SELECT
+ 21 UNION ALL
+ SELECT
+ 22 UNION ALL
+ SELECT
+ 23 UNION ALL
+ SELECT
+ 24 UNION ALL
+ SELECT
+ 25 UNION ALL
+ SELECT
+ 26 UNION ALL
+ SELECT
+ 27 UNION ALL
+ SELECT
+ 28 UNION ALL
+ SELECT
+ 29 UNION ALL
+ SELECT
+ 30 UNION ALL
+ SELECT
+ 31
+ ) x,
+ ( SELECT CONCAT( '2022-06', '-01' ) AS FIRST, DAY ( LAST_DAY( str_to_date( '2022-06-01', '%Y-%m-%d' ) ) ) AS
+ last ) y
+ WHERE
+ x.d<= y.last
+ AND ADDDATE( y.FIRST
+ , x.d - 1 ) <= CURDATE( )
+ ) AS lefttable
+ LEFT JOIN (
+ SELECT IFNULL(COUNT(*), 0) AS m,
+ DATE_FORMAT(create_time, '%Y-%c-%d') AS gptime
+ FROM sys_task
+ WHERE DATE_FORMAT(create_time, '%Y%m') = '202206'
+ GROUP BY gptime
+ ) AS righttable ON DATE_FORMAT(lefttable.date, '%Y-%c-%d') = righttable.gptime
+ </select>
+ <!--任务监管 code=3(当年)-->
+ <select id="selectY" resultType="java.util.HashMap">
+ SELECT IFNULL(COUNT(*), 0) AS num,
+ DATE_FORMAT(create_time, "%Y-%m-%d") as date
+ FROM
+ sys_task
+ WHERE 1=1 and YEAR (create_time)=#{time};
+ </select>
+
+ <select id="countTaskNum" resultType="java.util.HashMap">
+ <!--已完成 -->
+ 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