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/alarm/mapper/AlarmMapper.xml |  111 ++++++++++++++++++++++++++++++++++++++++++++++++-------
 1 files changed, 96 insertions(+), 15 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 630c430..e8e1b6e 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
@@ -30,12 +30,13 @@
         <result column="czTime" property="czTime"/>
         <result column="bz" property="bz"/>
         <result column="name" property="name"/>
+        <result column="cid" property="cid"/>
     </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.deviceNumber,a.region,a.district, a.alarmId,a.LEVEL,a.jd,a.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,
+        a.deviceNumber,a.region,a.district, a.alarmId,a.LEVEL,e.jd,e.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid,
         e.serialNumber,
         e.stype,
         e.channelNumber from sys_alarm a
@@ -71,7 +72,19 @@
         <if test="alarm.endTime!=null and alarm.endTime!=''">
             and a.alarmTime&lt;=#{alarm.endTime}
         </if>
-        ORDER BY a.alarmTime desc
+
+        and a.waringType NOT IN("系统测试","主机重新上电")
+
+        ORDER BY
+        a.jtype ASC,
+        a.alarmTime DESC
+    </select>
+
+    <select id="listAll" resultMap="alarmResultMap">
+       select a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,a.waringType,
+        a.deviceNumber,a.region,a.district, a.alarmId,a.LEVEL,e.jd,e.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid
+         from sys_alarm a LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber
+
     </select>
 
     <select id="selectList" resultMap="alarmResultMap">
@@ -93,17 +106,17 @@
         a.czTime,
         a.bz,
         a.LEVEL,
-        ST_ASTEXT (a.coordinate ) AS coordinate,
         a.jd,
         a.wd,
         a.jtype,
+        a.cid,
         a.rname,
-        d.addvnm,
+        jfpth.blade_region.name as addvnm,
         e.serialNumber,
         e.stype,
         e.channelNumber
         FROM
-        sys_alarm a LEFT JOIN sys_district d on d.addvcds=a.district LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber where 1=1
+        sys_alarm a  LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber LEFT JOIN jfpth.blade_region on jfpth.blade_region.`code`=a.district where 1=1
         <if test="jtype!=null and jtype!=''">
             and a.jtype=#{jtype}
         </if>
@@ -120,6 +133,11 @@
             and a.alarmTime&lt;=#{endTime}
         </if>
         ORDER BY id ASC
+    </select>
+
+    <select id="getLimit" resultMap="alarmResultMap">
+       select a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,a.waringType,
+        a.deviceNumber,a.region,a.district, a.alarmId,a.LEVEL,a.jd,a.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid from sys_alarm a ORDER BY id DESC LIMIT 1
     </select>
 
     <select id="selectInfo" resultMap="alarmResultMap">
@@ -142,7 +160,7 @@
         a.alarmId,
         a.rname,
         a.LEVEL,
-        ST_ASTEXT(a.coordinate) AS coordinate,
+        a.cid,
         a.jd,
         a.wd,
         a.jtype,
@@ -173,7 +191,7 @@
         a.alarmId,
         a.rname,
         a.LEVEL,
-        ST_ASTEXT (a.coordinate ) AS coordinate,
+        a.cid,
         a.jd,
         a.wd,
         a.jtype,
@@ -195,15 +213,17 @@
     <!--新增-->
     <insert id="s" parameterType="org.springblade.jfpt.alarm.entity.Alarm">
        INSERT INTO sys_alarm (alarmType,alarmPeople,alarmTime,galarmPeople,sex,phoneNumber,place,content,waringType,deviceNumber,
-       region,district,alarmId,level,rname,coordinate,jd,wd,jtype) VALUES
-        (#{alarmType},#{alarmPeople},#{alarmTime},#{galarmPeople},#{sex},#{phoneNumber},#{place},#{content},#{waringType},#{deviceNumber},#{region},#{district},#{alarmId},#{level},#{rname},POINT(#{jd},#{wd}),#{jd},#{wd},#{jtype})
+       region,district,alarmId,level,rname,coordinate,jd,wd,jtype,province,city,cid) VALUES
+        (#{alarmType},#{alarmPeople},#{alarmTime},#{galarmPeople},#{sex},#{phoneNumber},#{place},#{content},#{waringType},
+        #{deviceNumber},#{region},#{district},#{alarmId},#{level},#{rname},POINT(#{jd},#{wd}),
+        #{jd},#{wd},#{jtype},#{province},#{city},#{cid})
     </insert>
 
     <update id="updateOne" parameterType="org.springblade.jfpt.alarm.entity.Alarm">
     update sys_alarm SET alarmType=#{alarmType},alarmPeople=#{alarmPeople},alarmTime=#{alarmTime},
     galarmPeople=#{galarmPeople},sex=#{sex},phoneNumber=#{phoneNumber},place=#{place},
     content=#{content},waringType=#{waringType},deviceNumber=#{deviceNumber},region=#{region},district=#{district},alarmId=#{alarmId},level=#{level},rname=#{rname},jd=#{jd},wd=#{wd},
-    coordinate=POINT(#{jd},#{wd}),jtype=#{jtype},province=#{province},city=#{city} where id=#{id}
+    coordinate=POINT(#{jd},#{wd}),jtype=#{jtype},province=#{province},city=#{city},cid=#{cid} where id=#{id}
 </update>
 
 
@@ -229,22 +249,83 @@
         a.district,
         a.alarmId,
         a.LEVEL,
-        ST_ASTEXT (a.coordinate ) AS coordinate,
         a.jd,
+        a.cid,
         a.wd,
         a.jtype,
         a.rname,
         e.serialNumber,
         e.stype,
         e.channelNumber,
-        jfpth.blade_region.`name`
+        jfpth.blade_region.`name` as addvnm
         FROM
         sys_alarm a LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber LEFT JOIN jfpth.blade_region on jfpth.blade_region.`code`=a.district where
-        DATE_FORMAT(alarmTime,'%Y-%m-%d') &gt;=#{beginTime} and DATE_FORMAT(alarmTime,'%Y-%m-%d') &lt;=#{endTime} ORDER BY alarmTime desc
+        DATE_FORMAT(alarmTime,'%Y-%m-%d') &gt;=#{beginTime} and DATE_FORMAT(alarmTime,'%Y-%m-%d') &lt;=#{endTime} and a.waringType NOT IN("系统测试","主机重新上电") ORDER BY alarmTime desc
     </select>
 
 
     <update id="updateJtype">
-    update sys_alarm SET jtype=1,czTime=#{czTime},bz=#{bz} where id=#{id}
-</update>
+        update sys_alarm SET jtype=1,czTime=#{czTime},bz=#{bz} where id=#{id}
+    </update>
+
+    <!--查询当天警情总数-->
+    <select id="selectAlarmCount" resultType="java.lang.Integer">
+        SELECT count(*) FROM `sys_alarm`
+            where
+        waringType != '系统测试'
+            and
+        waringType!='主机重新上电'
+            and
+        to_days(alarmTime) = to_days(curdate())
+    </select>
+
+
+    <!--查询警情7天内每天的数据-->
+    <select id="selectAlarmData" 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(alarmTime,'%Y-%m-%d') as datetime, count(*) as count from sys_alarm
+            group by DATE_FORMAT(alarmTime,'%Y-%m-%d')
+	    ) b
+		 on
+		 a.click_date = b.datetime
+    </select>
+
+
+    <!--查询本日,本周,本月 主动报警的数量-->
+    <select id="selectAlarmSum" resultType="java.util.HashMap">
+        select sa.alarmType name,IFNULL(sb.count, 0) value from  (select alarmType from sys_alarm GROUP BY alarmType) sa
+        left join
+        ( select alarmType,count(*) count from sys_alarm
+            where 1=1
+            <if test="conditionVo.status==0">
+                and to_days(alarmTime)  = to_days(now())
+            </if>
+            <if test="conditionVo.status==1">
+                and YEARWEEK(date_format(alarmTime,'%Y-%m-%d'),1) = YEARWEEK(now(),1)
+            </if>
+            <if test="conditionVo.status==2">
+                and date_format(alarmTime,'%Y%m') = date_format(now(),'%Y%m')
+            </if>
+            group by alarmType
+        ) sb
+        on
+        sa.alarmType = sb.alarmType
+    </select>
 </mapper>

--
Gitblit v1.9.3