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/alarm/mapper/AlarmMapper.xml |  119 ++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 101 insertions(+), 18 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 9f10dcf..8343eca 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
@@ -34,9 +34,33 @@
         <result column="vaddress" property="vaddress"/>
         <result column="aaddress" property="aaddress"/>
         <result column="uids" property="uids"/>
+        <result column="securityArr" property="securityArr"/>
+        <result column="securityId" property="securityId"/>
+        <result column="baname" property="baname"/>
+        <result column="baid" property="baid"/>
+        <result column="baphone" property="baphone"/>
+    </resultMap>
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="alarmonline" type="org.springblade.jfpt.alarm.vo.AlarmVO">
+        <id column="alarmPeople" property="alarmPeople"/>
+        <result column="alarmId" property="alarmId"/>
+        <result column="phoneNumber" property="phoneNumber"/>
+    </resultMap>
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="userResultMap" type="org.springblade.system.user.entity.User">
+        <result column="id" property="id"/>
+        <result column="name" property="name"/>
+        <result column="phone" property="phone"/>
+        <result column="online_status" property="online_status"/>
+        <result column="work_status" property="work_status"/>
     </resultMap>
 
     <sql id="alarmCondition">
+        <if test="alarm.id!=null">
+            and a.id = #{alarm.id}
+        </if>
         <if test="alarm.jtype!=null">
             and a.jtype like concat('%',#{alarm.jtype},'%')
         </if>
@@ -58,16 +82,16 @@
         <if test="alarm.level!=null">
             and a.level like concat('%',#{alarm.level},'%')
         </if>
-        <if test="alarm.waringType!=null">
+        <if test="alarm.waringType!=null and alarm.waringType!='undefined'">
             and a.waringType like concat('%',#{alarm.waringType},'%')
         </if>
-        <if test="alarm.beginTime!=null and alarm.beginTime!=''">
+        <if test="alarm.beginTime!=null and alarm.beginTime!='' and alarm.beginTime!='undefined'">
             and a.alarmTime&gt;=#{alarm.beginTime}
         </if>
-        <if test="alarm.endTime!=null and alarm.endTime!=''">
+        <if test="alarm.endTime!=null and alarm.endTime!='' and alarm.endTime!='undefined'">
             and a.alarmTime&lt;=#{alarm.endTime}
         </if>
-        <if test="alarm.timeDesc!=null and alarm.timeDesc!=''">
+        <if test="alarm.timeDesc!=null and alarm.timeDesc!='' and alarm.timeDesc!='undefined'">
             <if test="alarm.timeDesc=='30分钟以上'">
                 and czTime-alarmTime>1800
             </if>
@@ -183,6 +207,7 @@
         a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,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,
+        a.securityArr,a.securityId,
         e.serialNumber,e.oneContacts,e.ThreeContacts,e.twoContacts,e.onePhone,e.twoPhone,e.ThreePhone,
         e.stype,
         e.oneId,
@@ -190,9 +215,14 @@
         e.threeId,
         e.deptId,
         e.street as place,
-        e.channelNumber from sys_alarm a
+        e.channelNumber,
+        u.name as baname,
+        u.id as baid,
+        u.phone as baphone
+        from sys_alarm a
         LEFT JOIN
         sys_equipment e on e.deviceNumber=a.deviceNumber
+        LEFT JOIN jfpth.blade_user u ON u.id = a.securityId
         where 1=1
         <include refid="alarmCondition"></include>
         and a.waringType IN("紧急求救")
@@ -367,7 +397,7 @@
 
     <select id="selectListSe" 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.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,"一键求助" as 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,
@@ -398,7 +428,11 @@
 
 
     <update id="updateJtype">
-        update sys_alarm SET jtype=#{jtype},bz=#{bz}
+        update sys_alarm SET jtype=#{jtype}
+
+        <if test="bz!=null and bz!=''">
+            ,bz=#{bz}
+        </if>
 
         <if test="securityArr!=null and id!=''">
             ,securityArr =#{securityArr}
@@ -503,16 +537,17 @@
 
     </select>
 
-    <select id="queryPolice" resultType="java.util.HashMap">
+    <select id="queryPolice" resultMap="userResultMap">
         SELECT * FROM jfpth.blade_user WHERE is_deleted != '1' and role_id ="1372092102682521602"
     </select>
 
 
-    <select id="queryPoliceTime" resultType="java.util.HashMap">
+    <select id="queryPoliceTime" resultMap="alarmonline">
 
         SELECT
         a.alarmPeople,
         a.alarmId,
+        a.phoneNumber,
         max( a.jjTime ) AS jjTime
         FROM
         sys_alarm a
@@ -527,7 +562,8 @@
         </if>
         GROUP BY
         a.alarmPeople,
-        a.alarmId
+        a.alarmId,
+        a.phoneNumber
         ORDER BY
         jjTime
         LIMIT 1
@@ -553,16 +589,62 @@
         AND role_id = "1370562810882502657"
     </select>
 
-    <select id="getAlarm" resultType="java.util.HashMap">
-        SELECT
-            *
+    <select id="getAlarm" resultMap="alarmResultMap">
+        select
+        a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,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,
+        a.securityArr,a.securityId,
+        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.street as place,
+        e.channelNumber
         FROM
-            sys_alarm
+            sys_alarm a
+            LEFT JOIN sys_equipment e ON e.deviceNumber = a.deviceNumber
         WHERE
-            securityId IS NULL
-            AND securityArr LIKE concat('%',#{alarm.securityArr},'%')
+
+            <if test="alarm.securityArr!=null and alarm.securityArr!=''">
+                securityId IS NULL
+                AND securityArr LIKE concat('%',#{alarm.securityArr},'%')
+            </if>
+
+            <if test="alarm.id!=null and alarm.id!=''">
+                a.id = #{alarm.id}
+            </if>
+
 
     </select>
+
+    <select id="getAlarming" resultMap="alarmResultMap">
+        select
+        a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,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,
+        a.securityArr,a.securityId,
+        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.street as place,
+        e.channelNumber
+        FROM
+            sys_alarm a
+            LEFT JOIN sys_equipment e ON e.deviceNumber = a.deviceNumber
+        WHERE
+            securityId =#{alarm.securityId} and jtype != 2
+
+    </select>
+
+    <update id="setAlarm">
+        update sys_alarm SET securityId=#{alarm.securityId} where id=#{alarm.id}
+    </update>
 
     <update id="updateVaddress">
         update sys_alarm SET vaddress=#{vaddress},uids=#{uids} where id=#{jid}
@@ -610,6 +692,7 @@
         ) b
         on
         a.days = b.datetime
+        order by days
     </select>
 
 
@@ -638,7 +721,7 @@
     <!--查询符合条件的数据并导出-->
     <select id="exportAlarm" resultType="org.springblade.common.entity.AlarmExcel">
         select
-        a.id,a.alarmType,a.alarmPeople,a.alarmTime,a.galarmPeople,a.sex,a.phoneNumber,a.place,a.content,a.waringType,a.bz,
+        a.id, "一键求助" as 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,
         e.serialNumber,e.oneContacts,e.ThreeContacts,e.twoContacts,e.onePhone,e.twoPhone,e.ThreePhone
@@ -654,7 +737,7 @@
 
     <!--获取实时警情图表统计数据-->
     <select id="getAlarmPie" resultType="org.springblade.common.entity.ReportReturnData">
-        select if(1=1,"紧急求救",0) type,ifnull(count(*),0) count from sys_alarm
+        select if(1=1,"一键求助",0) type,ifnull(count(*),0) count from sys_alarm
         where waringType="紧急求救"
         <include refid="alarmConditionPie"></include>
     </select>

--
Gitblit v1.9.3