From c7d05af4e7ebf92b67308df21bde17282c0c50f1 Mon Sep 17 00:00:00 2001
From: Administrator <admin>
Date: Thu, 06 May 2021 21:44:06 +0800
Subject: [PATCH] 1.警情导出bug修复 2.警情统计接口修改 3.一键报警设备接收报文时修改设备状态

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/mapper/EquipmentMapper.xml |   89 +++++++++++++++++++++++++++++++++-----------
 1 files changed, 66 insertions(+), 23 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/mapper/EquipmentMapper.xml b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/mapper/EquipmentMapper.xml
index b467021..7b8816d 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/mapper/EquipmentMapper.xml
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/mapper/EquipmentMapper.xml
@@ -30,6 +30,7 @@
         <result column="state" property="state"/>
         <result column="reason" property="reason"/>
         <result column="jtype" property="jtype"/>
+        <result column="manufacturers" property="manufacturers"/>
     </resultMap>
 
     <resultMap id="treeNodeResultMap" type="org.springblade.core.tool.node.TreeNode">
@@ -76,7 +77,19 @@
         equipment.deptId,
         equipment.addvcd,equipment.pay,equipment.expireTime from sys_equipment equipment
         left join sys_catalog catalog on catalog.eqid = equipment.deviceNumber
-
+        LEFT JOIN (
+        SELECT
+        count( id ) AS jtype,
+        deviceNumber as deviceN
+        FROM
+        sys_alarm
+        WHERE
+        waringType = "紧急求救"
+        AND jtype = 0
+        OR jtype = 1
+        GROUP BY
+        deviceNumber
+        ) alarm ON alarm.deviceN = equipment.deviceNumber
         where 1=1
 
         <if test="equipment.deviceName!=null">
@@ -119,7 +132,8 @@
     </select>
 
     <select id="selectDeptPages" resultMap="equipmentResultMap">
-        select equipment.id,equipment.deviceName,equipment.deviceNumber,equipment.deviceType,equipment.ownership
+        select IF
+        ( alarm.jtype IS NULL, 0, 1 ) AS jtype,equipment.id,equipment.deviceName,equipment.deviceNumber,equipment.deviceType,equipment.ownership
         ,equipment.ownerId,equipment.devicestate,equipment.stime,equipment.dtype,equipment.heartbeat,equipment.expireTime,
         equipment.parent_id,equipment.district,equipment.province,equipment.city,equipment.serialNumber,equipment.channelNumber,
         equipment.jd ,
@@ -129,10 +143,22 @@
         equipment.oneContacts,equipment.onePhone,equipment.oneId,
         equipment.twoContacts,equipment.twoPhone,equipment.twoId,
         equipment.ThreeContacts,equipment.ThreePhone,equipment.threeId,
-        equipment.deptId,
+        equipment.deptId,equipment.manufacturers,
         equipment.addvcd,equipment.pay,equipment.expireTime from sys_equipment equipment
         left join sys_catalog catalog on catalog.eqid = equipment.deviceNumber
-
+        LEFT JOIN (
+        SELECT
+        count( id ) AS jtype,
+        deviceNumber as deviceN
+        FROM
+        sys_alarm
+        WHERE
+        waringType = "紧急求救"
+        AND jtype = 0
+        OR jtype = 1
+        GROUP BY
+        deviceNumber
+        ) alarm ON alarm.deviceN = equipment.deviceNumber
         where 1=1
 
         <if test="equipment.deviceName!=null">
@@ -156,6 +182,9 @@
         <if test="equipment.city!=null">
             and city like concat('%',#{equipment.city},'%')
         </if>
+        <if test="equipment.manufacturers!=null and equipment.manufacturers!=''">
+            and manufacturers = #{equipment.manufacturers}
+        </if>
 
         <if test="equipment.devicestate!=null">
             and devicestate =#{equipment.devicestate}
@@ -165,25 +194,32 @@
             and dtype=#{equipment.dtype}
         </if>
 
-        <if test="dxtype!=null and dxtype == 1">
-            and heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY)
-        </if>
         <if test="dxtype!=null and dxtype == 0">
             and heartbeat &lt; DATE_SUB(NOW(),INTERVAL 1 DAY)
         </if>
-
-        <if test="childList!=null and childList.size>0">
-            and deptId in
-            <foreach collection="childList" index="index" item="item" open="(" separator="," close=")">
-                #{item}
-            </foreach>
+        <if test="dxtype!=null and dxtype == 1">
+            and heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY)
+        </if>
+        <if test="dxtype!=null and dxtype == 2">
+            and alarm.jtype IS NOT NULL
+        </if>
+        <if test="dxtype!=null and dxtype == 3">
+            and heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY) and state!=null
+        </if>
+        <if test="pid!=null and pid!=''">
+            and deptId like concat('%',#{pid},'%')
         </if>
 
     </select>
 
     <!--新增-->
     <insert id="s" parameterType="org.springblade.jfpt.equipment.entity.Equipment">
-       INSERT INTO sys_equipment (deviceName,deviceNumber,deviceType,ownership,ownerId,devicestate,stime,coordinate,parent_id,jd,wd,addvcd,street,dtype) VALUES (#{deviceName},#{deviceNumber},#{deviceType},#{ownership},#{yname},#{devicestate},#{stime},POINT(#{jd},#{wd}),#{parentId},#{jd},#{wd},#{addvcd},#{streeName},#{dtype})
+       INSERT INTO sys_equipment (deviceName,deviceNumber,deviceType,ownership,ownerId,devicestate,stime,coordinate,parent_id,jd,wd,addvcd,street,dtype,manufacturers) VALUES (#{deviceName},#{deviceNumber},#{deviceType},#{ownership},#{yname},#{devicestate},#{stime},POINT(#{jd},#{wd}),#{parentId},#{jd},#{wd},#{addvcd},#{streeName},#{dtype},#{manufacturers})
+    </insert>
+
+    <!--新增-->
+    <insert id="saveImg" parameterType="org.springblade.jfpt.equipment.entity.Equipment">
+       INSERT INTO sys_depl (deviceName,deviceNumber,contacts,calls,paddress,deploymentTime) VALUES (#{deviceName},#{deviceNumber},#{contacts},#{call},#{paddress},#{deploymentTime})
     </insert>
 
     <select id="tree" resultMap="treeNodeResultMap">
@@ -236,7 +272,7 @@
         LEFT JOIN (
         SELECT
         count( id ) AS jtype,
-        deviceNumber
+        deviceNumber as deviceN
         FROM
         sys_alarm
         WHERE
@@ -245,7 +281,7 @@
         OR jtype = 1
         GROUP BY
         deviceNumber
-        ) alarm ON alarm.deviceNumber = equipment.deviceNumber
+        ) alarm ON alarm.deviceN = equipment.deviceNumber
         WHERE
         1 =1
 
@@ -316,8 +352,9 @@
 
     <update id="updateOne" parameterType="org.springblade.jfpt.equipment.entity.Equipment">
     update sys_equipment SET deviceName=#{deviceName},deviceNumber=#{deviceNumber},deviceType=#{deviceType},
-    ownership=#{ownership},ownerId=#{yname},devicestate=#{devicestate},stime=#{stime},
-    coordinate=POINT(#{jd},#{wd}),parent_id=#{parentId},jd=#{jd},wd=#{wd},addvcd=#{addvnm},street=#{streeName},dtype=#{dtype} where id=#{id}
+    ownership=#{ownership},ownerId=#{yname},devicestate=#{devicestate},stime=#{stime},coordinate=POINT(#{jd},#{wd}),
+    parent_id=#{parentId},jd=#{jd},wd=#{wd},addvcd=#{addvnm},street=#{streeName},dtype=#{dtype},manufacturers=#{manufacturers}
+     where id=#{id}
     </update>
 
     <update id="updataType">
@@ -333,7 +370,7 @@
         SELECT
         dept.deptId,dept.id,dept.deviceName,dept.deviceNumber,dept.deviceType,dept.ownership,
         dept.ownerId,dept.devicestate,dept.stime,dept.district,dept.province,dept.city,
-        ST_ASTEXT(dept.coordinate) as coordinate,dept.dtype,dept.expireTime,dept.heartbeat, dept.state,dept.reason,
+        ST_ASTEXT(dept.coordinate) as coordinate,dept.dtype,dept.manufacturers,dept.expireTime,dept.heartbeat, dept.state,dept.reason,
         dept.parent_id,dept.jd,dept.wd,dept.street,u.yname,d.addvnm,dept.addvcd,dept.serialNumber,dept.channelNumber,
         dept.oneContacts,dept.onePhone,dept.oneId,
         dept.twoContacts,dept.twoPhone,dept.twoId,
@@ -403,17 +440,17 @@
     </update>
 
     <update id="updateExstate">
-        update sys_equipment SET state=#{state},reason=#{reason}  where deviceNumber=#{deviceNumber}
+        update sys_equipment SET dtype=#{dtype},reason=#{reason}  where deviceNumber=#{deviceNumber}
     </update>
 
     <!--查询设备在线数量-->
     <select id="selectEqCz" resultType="Integer">
-        select COUNT(*) from sys_equipment where heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY)
+        select COUNT(*) from sys_equipment where heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY) and dtype=1
     </select>
 
     <!--查询设备掉线数量-->
     <select id="selectEqCd" resultType="Integer">
-        select COUNT(*) from sys_equipment where heartbeat &lt; DATE_SUB(NOW(),INTERVAL 1 DAY)
+        select COUNT(*) from sys_equipment where heartbeat &lt; DATE_SUB(NOW(),INTERVAL 1 DAY) and dtype=0
     </select>
 
     <!--查询预警设备数量-->
@@ -431,8 +468,14 @@
             deviceNumber
     </select>
 
+
+    <!--查询预警设备数量-->
+    <select id="selectEqCys" resultType="Integer">
+        select COUNT(*) from sys_equipment where heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY) and dtype=2
+    </select>
+
     <!--查询设故障数量-->
     <select id="selectEqCg" resultType="Integer">
-        select COUNT(*) from sys_equipment where heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY) and state!=null
+        select COUNT(*) from sys_equipment where heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY) and dtype=3
     </select>
 </mapper>

--
Gitblit v1.9.3