南昌市物联网技防平台-后台
zengh
2021-04-23 670bc85ba8468dbe9a427abc54f2bca9d4e71749
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/equipment/mapper/EquipmentMapper.xml
@@ -29,6 +29,7 @@
        <result column="district" property="district"/>
        <result column="state" property="state"/>
        <result column="reason" property="reason"/>
        <result column="jtype" property="jtype"/>
    </resultMap>
    <resultMap id="treeNodeResultMap" type="org.springblade.core.tool.node.TreeNode">
@@ -75,7 +76,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">
@@ -118,7 +131,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 ,
@@ -131,7 +145,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">
@@ -164,8 +190,17 @@
            and dtype=#{equipment.dtype}
        </if>
        <if test="dxtype!=null">
        <if test="dxtype!=null and dxtype == 0">
            and heartbeat &lt; DATE_SUB(NOW(),INTERVAL 1 DAY)
        </if>
        <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="childList!=null and childList.size>0">
@@ -182,11 +217,84 @@
       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>
    <!--新增-->
    <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">
          select id, parent_id, deviceName as title, id as "value", id as "key" from sys_equipment
    </select>
    <select id="listAll" resultMap="equipmentResultMap">
        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,
        equipment.wd,
        equipment.state,
        equipment.reason,
        equipment.street,
        catalog.pid,
        equipment.oneContacts,
        equipment.onePhone,
        equipment.oneId,
        equipment.twoContacts,
        equipment.twoPhone,
        equipment.twoId,
        equipment.ThreeContacts,
        equipment.ThreePhone,
        equipment.threeId,
        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 and equipment.deviceName!=''">
            and (
            deviceName like concat('%',#{equipment.deviceName},'%')
            or deviceNumber like concat('%',#{equipment.deviceName},'%')
            or street like concat('%',#{equipment.deviceName},'%')
            )
        </if>
    </select>
    <select id="listAlls" resultMap="equipmentResultMap">
          select 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,
@@ -334,4 +442,33 @@
        update sys_equipment SET state=#{state},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>
    <!--查询设备掉线数量-->
    <select id="selectEqCd" resultType="Integer">
        select COUNT(*) from sys_equipment where heartbeat &lt; DATE_SUB(NOW(),INTERVAL 1 DAY)
    </select>
    <!--查询预警设备数量-->
    <select id="selectEqCy" resultType="java.util.HashMap">
        SELECT
            count( id ) AS jtype,
            deviceNumber
        FROM
            sys_alarm
        WHERE
            waringType = "紧急求救"
            AND jtype = 0
            OR jtype = 1
        GROUP BY
            deviceNumber
    </select>
    <!--查询设故障数量-->
    <select id="selectEqCg" resultType="Integer">
        select COUNT(*) from sys_equipment where heartbeat >= DATE_SUB(NOW(),INTERVAL 1 DAY) and state!=null
    </select>
</mapper>