From 47a458ca867f700ad8dfe8bccdbb6bf59ca2d301 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Tue, 11 May 2021 15:54:02 +0800
Subject: [PATCH] APP接口调整
---
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/healthcode/mapper/healthcodeMapper.xml | 132 ++++++++++++++++++++++++++++++++++++-------
1 files changed, 110 insertions(+), 22 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 3225b9b..eda5310 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
@@ -57,6 +57,71 @@
</if>
</trim>
</sql>
+
+ <sql id="detailCondition">
+ <if test="healthcodeVO.status==0">
+ and to_days(dtime)=to_days(now())
+ </if>
+ <if test="healthcodeVO.status==1">
+ and YEARWEEK(date_format(dtime,'%Y-%m-%d'),1) = YEARWEEK(now(),1)
+ </if>
+ <if test="healthcodeVO.status==2">
+ and date_format(dtime,'%Y%m') = date_format(now(),'%Y%m')
+ </if>
+ <if test="healthcodeVO.province!=null">
+ and province like concat('%',#{healthcodeVO.province},'%')
+ </if>
+ <if test="healthcodeVO.city!=null">
+ and city like concat('%',#{healthcodeVO.city},'%')
+ </if>
+ <if test="healthcodeVO.district!=null">
+ and district like concat('%',#{healthcodeVO.district},'%')
+ </if>
+ <if test="healthcodeVO.begTime!=null and healthcodeVO.begTime!='' and healthcodeVO.begTime!='undefined' and healthcodeVO.endTime!='undefined'
+ and healthcodeVO.endTime!=null and healthcodeVO.endTime!='' ">
+ and date(dtime) between #{healthcodeVO.begTime} and #{healthcodeVO.endTime}
+ </if>
+ <if test="healthcodeVO.timeDesc!=null and healthcodeVO.timeDesc!='' and healthcodeVO.timeDesc!='undefined' ">
+ <if test="healthcodeVO.timeDesc=='0-2'">
+ and hour(dtime)>=0 and hour(dtime) <2
+ </if>
+ <if test="healthcodeVO.timeDesc=='2-4'">
+ and hour(dtime)>=2 and hour(dtime) <4
+ </if>
+ <if test="healthcodeVO.timeDesc=='4-6'">
+ and hour(dtime)>=4 and hour(dtime) <6
+ </if>
+ <if test="healthcodeVO.timeDesc=='6-8'">
+ and hour(dtime)>=6 and hour(dtime) <8
+ </if>
+ <if test="healthcodeVO.timeDesc=='8-10'">
+ and hour(dtime)>=8 and hour(dtime) <10
+ </if>
+ <if test="healthcodeVO.timeDesc=='10-12'">
+ and hour(dtime)>=10 and hour(dtime) <12
+ </if>
+ <if test="healthcodeVO.timeDesc=='12-14'">
+ and hour(dtime)>=12 and hour(dtime) <14
+ </if>
+ <if test="healthcodeVO.timeDesc=='14-16'">
+ and hour(dtime)>=14 and hour(dtime) <16
+ </if>
+ <if test="healthcodeVO.timeDesc=='16-18'">
+ and hour(dtime)>=16 and hour(dtime) <18
+ </if>
+ <if test="healthcodeVO.timeDesc=='18-20'">
+ and hour(dtime)>=18 and hour(dtime) <20
+ </if>
+ <if test="healthcodeVO.timeDesc=='20-22'">
+ and hour(dtime)>=20 and hour(dtime) <22
+ </if>
+ <if test="healthcodeVO.timeDesc=='22-24'">
+ and hour(dtime)>=22 and hour(dtime) <24
+ </if>
+ </if>
+ </sql>
+
+
<insert id="insert">
insert into healthcode(<include refid="key"/>) values(<include refid="value"/>)
</insert>
@@ -126,30 +191,10 @@
<select id="selectHealthcodeListPage" resultType="org.springblade.jfpt.healthcode.entity.Healthcode">
SELECT * FROM healthcode
where 1=1
- <if test="healthcodeVO.status==0">
- and to_days(dtime)=to_days(now())
- </if>
- <if test="healthcodeVO.status==1">
- and YEARWEEK(date_format(dtime,'%Y-%m-%d'),1) = YEARWEEK(now(),1)
- </if>
- <if test="healthcodeVO.status==2">
- and date_format(dtime,'%Y%m') = date_format(now(),'%Y%m')
- </if>
- <if test="healthcodeVO.type!=null">
+ <if test="healthcodeVO.type!=null and healthcodeVO.type!='undefined' ">
and type=#{healthcodeVO.type}
</if>
- <if test="healthcodeVO.province!=null">
- and province like concat('%',#{healthcodeVO.province},'%')
- </if>
- <if test="healthcodeVO.city!=null">
- and city like concat('%',#{healthcodeVO.city},'%')
- </if>
- <if test="healthcodeVO.district!=null">
- and district like concat('%',#{healthcodeVO.district},'%')
- </if>
- <if test="healthcodeVO.begTime!=null and healthcodeVO.begTime!='' and healthcodeVO.endTime!=null and healthcodeVO.endTime!='' ">
- and date(dtime) between #{healthcodeVO.begTime} and #{healthcodeVO.endTime}
- </if>
+ <include refid="detailCondition"></include>
ORDER BY dtime desc
</select>
@@ -168,4 +213,47 @@
where type =3
and dtime between #{conditionVo.startTime} and #{conditionVo.endTime}
</select>
+
+ <!--统计时间段内红色健康码人数数量数据-->
+ <select id="selectHealthcodeTimeData" resultType="java.lang.Integer">
+ select ifnull(count,0) count from
+ (
+ SELECT @date := DATE_ADD( @date, INTERVAL + 1 DAY ) days FROM
+ (
+ SELECT @date := DATE_ADD( #{conditionVo.startTime}, INTERVAL - 1 DAY ) FROM sys_date
+ ) time
+ WHERE to_days( @date ) < to_days( #{conditionVo.endTime} )
+ ) 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.days = b.datetime
+ </select>
+
+ <!--导出健康码数据表格-->
+ <select id="exportHealthcode" resultType="org.springblade.common.entity.HealthcodeExcel">
+ SELECT * FROM healthcode
+ where 1=1
+ <if test="healthcodeVO.type!=null and healthcodeVO.type!='undefined' ">
+ and type=#{healthcodeVO.type}
+ </if>
+ <include refid="detailCondition"></include>
+ ORDER BY dtime desc
+ </select>
+
+ <!--导出健康码数据报表-->
+ <select id="getHealthcodePie" resultType="org.springblade.common.entity.ReportReturnData">
+ select if(1=1,'绿色健康码',0) type,ifnull(count(*),0) count from healthcode where type=1
+ <include refid="detailCondition"></include>
+ union all
+ select if(1=1,'黄色健康码',0) type,ifnull(count(*),0) count from healthcode where type=2
+ <include refid="detailCondition"></include>
+ union all
+ select if(1=1,'红色健康码',0) type,ifnull(count(*),0) count from healthcode where type=3
+ <include refid="detailCondition"></include>
+ </select>
</mapper>
--
Gitblit v1.9.3