From dfed9c07aa8da5791d568736716bc4b44d59ebaf Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Fri, 16 Apr 2021 13:33:53 +0800
Subject: [PATCH] jfreechart+easyExcel 方式导出报表
---
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml | 182 +++++++++++++++++++++------------------------
1 files changed, 84 insertions(+), 98 deletions(-)
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
index bae32d7..df3dad8 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
@@ -35,21 +35,7 @@
<result column="aaddress" property="aaddress"/>
</resultMap>
-
- <select id="selectAlarmPage" resultMap="alarmResultMap">
- select
- a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,a.waringType,a.bz,
- a.deviceNumber,a.region,a.district,a.vaddress,a.aaddress,
- a.alarmId,a.LEVEL,e.jd,e.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid,
- e.serialNumber,e.oneContacts,e.ThreeContacts,e.twoContacts,e.onePhone,e.twoPhone,e.ThreePhone,
- e.stype,
- e.oneId,
- e.twoId,
- e.threeId,
- e.deptId,
- e.channelNumber from sys_alarm a
- LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber
- where 1=1
+ <sql id="alarmCondition">
<if test="alarm.jtype!=null">
and a.jtype like concat('%',#{alarm.jtype},'%')
</if>
@@ -130,9 +116,83 @@
and hour(alarmTime)>=22 and hour(alarmTime) <24
</if>
</if>
+ </sql>
+ <sql id="alarmConditionPie">
+ <if test="alarm.beginTime!=null and alarm.beginTime!=''">
+ and alarmTime>=#{alarm.beginTime}
+ </if>
+ <if test="alarm.endTime!=null and alarm.endTime!=''">
+ and alarmTime<=#{alarm.endTime}
+ </if>
+ <if test="alarm.timeDesc!=null and alarm.timeDesc!=''">
+ <if test="alarm.timeDesc=='30分钟以上'">
+ and czTime-alarmTime>1800
+ </if>
+ <if test="alarm.timeDesc=='10-30分钟'">
+ and czTime-alarmTime>600 and czTime-alarmTime <1800
+ </if>
+ <if test="alarm.timeDesc=='5-10分钟'">
+ and czTime-alarmTime>300 and czTime-alarmTime <600
+ </if>
+ <if test="alarm.timeDesc=='小于5分钟'">
+ and czTime-alarmTime>0 and czTime-alarmTime <300
+ </if>
+ <if test="alarm.timeDesc=='0-2'">
+ and hour(alarmTime)>=0 and hour(alarmTime) <2
+ </if>
+ <if test="alarm.timeDesc=='2-4'">
+ and hour(alarmTime)>=2 and hour(alarmTime) <4
+ </if>
+ <if test="alarm.timeDesc=='4-6'">
+ and hour(alarmTime)>=4 and hour(alarmTime) <6
+ </if>
+ <if test="alarm.timeDesc=='6-8'">
+ and hour(alarmTime)>=6 and hour(alarmTime) <8
+ </if>
+ <if test="alarm.timeDesc=='8-10'">
+ and hour(alarmTime)>=8 and hour(alarmTime) <10
+ </if>
+ <if test="alarm.timeDesc=='10-12'">
+ and hour(alarmTime)>=10 and hour(alarmTime) <12
+ </if>
+ <if test="alarm.timeDesc=='12-14'">
+ and hour(alarmTime)>=12 and hour(alarmTime) <14
+ </if>
+ <if test="alarm.timeDesc=='14-16'">
+ and hour(alarmTime)>=14 and hour(alarmTime) <16
+ </if>
+ <if test="alarm.timeDesc=='16-18'">
+ and hour(alarmTime)>=16 and hour(alarmTime) <18
+ </if>
+ <if test="alarm.timeDesc=='18-20'">
+ and hour(alarmTime)>=18 and hour(alarmTime) <20
+ </if>
+ <if test="alarm.timeDesc=='20-22'">
+ and hour(alarmTime)>=20 and hour(alarmTime) <22
+ </if>
+ <if test="alarm.timeDesc=='22-24'">
+ and hour(alarmTime)>=22 and hour(alarmTime) <24
+ </if>
+ </if>
+ </sql>
+
+ <select id="selectAlarmPage" resultMap="alarmResultMap">
+ select
+ a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,a.waringType,a.bz,
+ a.deviceNumber,a.region,a.district,a.vaddress,a.aaddress,
+ a.alarmId,a.LEVEL,e.jd,e.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid,
+ e.serialNumber,e.oneContacts,e.ThreeContacts,e.twoContacts,e.onePhone,e.twoPhone,e.ThreePhone,
+ e.stype,
+ e.oneId,
+ e.twoId,
+ e.threeId,
+ e.deptId,
+ e.channelNumber from sys_alarm a
+ LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber
+ where 1=1
+ <include refid="alarmCondition"></include>
and a.waringType IN("紧急求救")
-
ORDER BY
a.jtype ASC,
a.alarmTime DESC
@@ -566,92 +626,18 @@
from sys_alarm a
LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber
where 1=1
- <if test="alarm.jtype!=null">
- and a.jtype like concat('%',#{alarm.jtype},'%')
- </if>
- <if test="alarm.deviceNumber!=null">
- and a.deviceNumber like concat('%',#{alarm.deviceNumber},'%')
- </if>
- <if test="alarm.galarmPeople!=null">
- and a.galarmPeople like concat('%',#{alarm.galarmPeople},'%')
- </if>
- <if test="alarm.district!=null">
- and a.district like concat('%',#{alarm.district},'%')
- </if>
- <if test="alarm.province!=null">
- and a.province like concat('%',#{alarm.province},'%')
- </if>
- <if test="alarm.city!=null">
- and a.city like concat('%',#{alarm.city},'%')
- </if>
- <if test="alarm.level!=null">
- and a.level like concat('%',#{alarm.level},'%')
- </if>
- <if test="alarm.waringType!=null">
- and a.waringType like concat('%',#{alarm.waringType},'%')
- </if>
- <if test="alarm.beginTime!=null and alarm.beginTime!=''">
- and a.alarmTime>=#{alarm.beginTime}
- </if>
- <if test="alarm.endTime!=null and alarm.endTime!=''">
- and a.alarmTime<=#{alarm.endTime}
- </if>
- <if test="alarm.timeDesc!=null and alarm.timeDesc!=''">
- <if test="alarm.timeDesc=='30分钟以上'">
- and czTime-alarmTime>1800
- </if>
- <if test="alarm.timeDesc=='10-30分钟'">
- and czTime-alarmTime>600 and czTime-alarmTime <1800
- </if>
- <if test="alarm.timeDesc=='5-10分钟'">
- and czTime-alarmTime>300 and czTime-alarmTime <600
- </if>
- <if test="alarm.timeDesc=='小于5分钟'">
- and czTime-alarmTime>0 and czTime-alarmTime <300
- </if>
- <if test="alarm.timeDesc=='0-2'">
- and hour(alarmTime)>=0 and hour(alarmTime) <2
- </if>
- <if test="alarm.timeDesc=='2-4'">
- and hour(alarmTime)>=2 and hour(alarmTime) <4
- </if>
- <if test="alarm.timeDesc=='4-6'">
- and hour(alarmTime)>=4 and hour(alarmTime) <6
- </if>
- <if test="alarm.timeDesc=='6-8'">
- and hour(alarmTime)>=6 and hour(alarmTime) <8
- </if>
- <if test="alarm.timeDesc=='8-10'">
- and hour(alarmTime)>=8 and hour(alarmTime) <10
- </if>
- <if test="alarm.timeDesc=='10-12'">
- and hour(alarmTime)>=10 and hour(alarmTime) <12
- </if>
- <if test="alarm.timeDesc=='12-14'">
- and hour(alarmTime)>=12 and hour(alarmTime) <14
- </if>
- <if test="alarm.timeDesc=='14-16'">
- and hour(alarmTime)>=14 and hour(alarmTime) <16
- </if>
- <if test="alarm.timeDesc=='16-18'">
- and hour(alarmTime)>=16 and hour(alarmTime) <18
- </if>
- <if test="alarm.timeDesc=='18-20'">
- and hour(alarmTime)>=18 and hour(alarmTime) <20
- </if>
- <if test="alarm.timeDesc=='20-22'">
- and hour(alarmTime)>=20 and hour(alarmTime) <22
- </if>
- <if test="alarm.timeDesc=='22-24'">
- and hour(alarmTime)>=22 and hour(alarmTime) <24
- </if>
- </if>
-
+ <include refid="alarmCondition"></include>
and a.waringType IN("紧急求救")
-
ORDER BY
a.jtype ASC,
a.alarmTime DESC
</select>
+ <!--获取实时警情图表统计数据-->
+ <select id="getAlarmPie" resultType="org.springblade.common.entity.ReportReturnData">
+ select if(1=1,"紧急求救",0) type,ifnull(count(*),0) count from sys_alarm
+ where waringType="紧急求救"
+ <include refid="alarmConditionPie"></include>
+ </select>
+
</mapper>
--
Gitblit v1.9.3