洪城义警-正式版后台
zengh
2021-07-04 00cb7fea9c8ed32968ac43ef01ac1fe4e4d0931f
src/main/java/org/springblade/modules/alarm/mapper/AlarmMapper.xml
@@ -645,6 +645,106 @@
    </select>
    <sql id="getAlarmListSqlParam">
        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,e.district,a.vaddress,a.aaddress,
        a.alarmId,a.LEVEL,a.jd,a.wd,a.jtype,a.rname,a.jjTime,e.province,e.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.deviceName,
        a.place as place,
        e.channelNumber
        FROM
            sys_alarm a
            LEFT JOIN sys_equipment e ON e.deviceNumber = a.deviceNumber
        WHERE
        1=1
    </sql>
    <!--查询当前保安所有警情信息-->
<!--    <select id="getAllAlarmList" resultMap="alarmResultMap">-->
<!--        (select * from (-->
<!--        <include refid="getAlarmListSqlParam"/>-->
<!--        and securityId =#{alarm.securityId} and jtype = 1 order by alarmTime limit 9999-->
<!--        )a)-->
<!--        union-->
<!--        (select * from (-->
<!--        <include refid="getAlarmListSqlParam"/>-->
<!--        and securityId = "" or securityId IS NULL-->
<!--        AND securityArr LIKE concat('%',#{alarm.securityId},'%')-->
<!--        order by alarmTime desc limit 9999-->
<!--        )a)-->
<!--        union-->
<!--        (select * from (-->
<!--        <include refid="getAlarmListSqlParam"/>-->
<!--        and securityId =#{alarm.securityId} and jtype = 2 order by alarmTime desc limit 9999-->
<!--        )a)-->
<!--    </select>-->
    <!--查询当前保安所有警情信息-->
    <select id="getAllAlarmList" resultMap="alarmResultMap">
        (select * from (
        <include refid="getAlarmListSqlParam"/>
        and securityId = "" or securityId IS NULL
        AND securityArr LIKE concat('%',#{alarm.securityId},'%')
        order by alarmTime desc limit 9999
        )a)
        union
        (select * from (
        <include refid="getAlarmListSqlParam"/>
        and securityId =#{alarm.securityId} and jtype = 1 order by alarmTime limit 9999
        )a)
        union
        (select * from (
        <include refid="getAlarmListSqlParam"/>
        and securityId =#{alarm.securityId} and jtype = 2 order by alarmTime desc limit 9999
        )a)
    </select>
    <!--查询当前保安需要处理和未处理的警情信息-->
    <select id="getAlarmList" resultMap="alarmResultMap">
        <include refid="getAlarmListSqlParam"/>
        <if test="alarm.status==2">
            and securityId = "" or securityId IS NULL
            AND securityArr LIKE concat('%',#{alarm.securityId},'%')
            order by alarmTime desc
        </if>
        <if test="alarm.status==3">
            and securityId =#{alarm.securityId} and jtype = 2
            order by alarmTime desc
        </if>
        <if test="alarm.status==4">
            and securityId =#{alarm.securityId} and jtype = 1
            order by alarmTime desc
        </if>
    </select>
    <!--获取警情数量的集合,全部,未处理,已处理的数量-->
    <select id="getAlarmNumber" resultType="java.lang.Integer">
        (select ifnull(count(*),0) number from sys_alarm
            where securityId =#{alarm.securityId}
            or securityId = "" or securityId IS NULL
            and securityArr LIKE concat('%',#{alarm.securityId},'%'))
        union
        (select ifnull(count(*),0) number from sys_alarm
            where securityId = "" or securityId IS NULL
            and securityArr LIKE concat('%',#{alarm.securityId},'%'))
        union
        (select ifnull(count(*),0) number from sys_alarm
            where securityId =#{alarm.securityId} and jtype = 2)
        union
        (select ifnull(count(*),0) number from sys_alarm
            where securityId =#{alarm.securityId} and jtype = 1)
    </select>
    <update id="setAlarm">
        update sys_alarm SET securityId=#{alarm.securityId} where id=#{alarm.id}
    </update>