From 7e6b4d0547e1b46df3cb3f0385e5d50ce3ca8a5d Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Wed, 17 Mar 2021 15:48:42 +0800
Subject: [PATCH] 1.警情保留数据

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/mapper/healthcodeMapper.xml |   54 +++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 47 insertions(+), 7 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/mapper/healthcodeMapper.xml b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/mapper/healthcodeMapper.xml
index ea4369d..825cc94 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/mapper/healthcodeMapper.xml
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/mapper/healthcodeMapper.xml
@@ -60,14 +60,25 @@
     <insert id="insert">
         insert into healthcode(<include refid="key"/>) values(<include refid="value"/>)
     </insert>
+
+<!--    <select id="selectCountr" resultType="java.util.HashMap">-->
+<!--         SELECT COUNT( * ) AS num,type-->
+<!--            FROM-->
+<!--         healthcode-->
+<!--            WHERE-->
+<!--         DATE_FORMAT(dtime,'%Y-%m-%d')=#{time} GROUP BY type-->
+<!--    </select>-->
+
+    <!--查询当天的健康码统计数据  2021-03-13 arsn修改-->
     <select id="selectCountr" resultType="java.util.HashMap">
-     SELECT
-	COUNT( * ) AS num,
-	type
-FROM
-	healthcode
-WHERE
-DATE_FORMAT(dtime,'%Y-%m-%d')=#{time} GROUP BY type
+        SELECT COUNT( * ) AS num,1 as type FROM healthcode WHERE
+             TO_DAYS(dtime)=TO_DAYS(NOW()) and type=1
+                     union all
+        SELECT COUNT( * ) AS num,2 as type FROM healthcode WHERE
+             TO_DAYS(dtime)=TO_DAYS(NOW()) and type=2
+               union all
+        SELECT COUNT( * ) AS num,3 as type FROM healthcode WHERE
+             TO_DAYS(dtime)=TO_DAYS(NOW()) and type=3
     </select>
 
     <select id="selectCountz" resultType="java.util.HashMap">
@@ -80,4 +91,33 @@
         DATE_FORMAT(dtime,'%Y-%m-%d')&gt;=#{beginTime} and DATE_FORMAT(dtime,'%Y-%m-%d')&lt;=#{endTime} GROUP BY type
     </select>
 
+
+    <!--统计7天内每天红色健康码人数数量数据-->
+    <select id="selectRedCodeDataStatis" resultType="java.lang.Integer">
+        select ifnull(b.count,0) as count from
+        (
+        SELECT DATE_FORMAT(date_sub(curdate(), interval 6 day),'%Y-%m-%d') as click_date
+            union all
+        SELECT DATE_FORMAT(date_sub(curdate(), interval 5 day),'%Y-%m-%d') as click_date
+            union all
+        SELECT DATE_FORMAT(date_sub(curdate(), interval 4 day),'%Y-%m-%d') as click_date
+            union all
+        SELECT DATE_FORMAT(date_sub(curdate(), interval 3 day),'%Y-%m-%d') as click_date
+            union all
+        SELECT DATE_FORMAT(date_sub(curdate(), interval 2 day),'%Y-%m-%d') as click_date
+            union all
+        SELECT DATE_FORMAT(date_sub(curdate(), interval 1 day),'%Y-%m-%d') as click_date
+            union all
+        SELECT DATE_FORMAT(curdate(),'%Y-%m-%d')  as click_date
+        ) a
+		left join
+	    (
+	    select DATE_FORMAT(dtime,'%Y-%m-%d') as datetime, count(*) as count from healthcode
+						where `type`=3
+            group by DATE_FORMAT(dtime,'%Y-%m-%d')
+	    ) b
+		 on
+		 a.click_date = b.datetime
+    </select>
+
 </mapper>

--
Gitblit v1.9.3