南昌市物联网技防平台-后台
zengh
2021-03-17 94fc23eba4055c02a18ee5b1550fa723b4495e22
警情分发
5 files modified
84 ■■■■ changed files
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java 32 ●●●●● patch | view | raw | blame | history
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java 2 ●●●●● patch | view | raw | blame | history
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml 43 ●●●●● patch | view | raw | blame | history
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java 2 ●●●●● patch | view | raw | blame | history
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java 5 ●●●●● patch | view | raw | blame | history
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
@@ -163,6 +163,38 @@
        if (alarm.getAlarmTime() != null && alarm.getAlarmTime().equals("")){
            alarm.setAlarmTime(null);
        }
        if (alarm.getCid() != null && alarm.getCid().equals("")){
            alarm.setCid("0");
        }
        //警情分发测试代码
        //查询所有在线的接警员
        List<Map<String, Object>> policeList = alarmService.queryPolice();
        List<Map<String, Object>> online_police = new ArrayList<>();
        for (int i = 0; i < policeList.size(); i++) {
            if (policeList.get(i).get("work_status").equals(0)){
                System.out.println(policeList.get(i).get("real_name"));
                online_police.add(policeList.get(i));
            }
        }
        int size = 0;
        if (online_police.size() == 0){
            online_police = policeList;
            size = policeList.size();
        }else {
            size = online_police.size();
        }
        int num=(int)(Math.random()*(size));
        String name = (String) online_police.get(num).get("real_name");
        String id = (String) online_police.get(num).get("id");
        alarm.setAlarmPeople(name);
        alarm.setAlarmId(name);
        return R.status(alarmService.saveOrUpdate(alarm));
    }
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java
@@ -74,4 +74,6 @@
     * @return
     */
    List<Map<String, Object>> selectAlarmSum(@Param("conditionVo") ConditionVo conditionVo);
    List queryPolice();
}
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml
@@ -35,13 +35,15 @@
    <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,e.jd,e.wd,a.jtype,a.rname,a.jjTime,a.province,a.city,a.cid,
        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,
        e.serialNumber,
        e.stype,
        e.channelNumber from sys_alarm a
        LEFT JOIN sys_equipment e on e.deviceNumber=a.deviceNumber
         where 1=1
        where 1=1
        <if test="alarm.jtype!=null">
            and a.jtype like concat('%',#{alarm.jtype},'%')
        </if>
@@ -116,7 +118,8 @@
        e.stype,
        e.channelNumber
        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 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>
@@ -172,7 +175,7 @@
        </if>
    </select>
<!--实时提醒-->
    <!--实时提醒-->
    <select id="selecttx" resultMap="alarmResultMap">
        SELECT
        a.id,
@@ -200,7 +203,8 @@
        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_district d on d.addvcds=a.district LEFT JOIN sys_equipment e on
        e.deviceNumber=a.deviceNumber where 1=1
        <if test="id!=null and id!=''">
            and a.id &gt;#{id}
        </if>
@@ -310,22 +314,25 @@
    <!--查询本日,本周,本月 主动报警的数量-->
    <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
        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
        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>
    <select id="queryPolice" resultType="java.util.HashMap">
    SELECT * FROM jfpth.blade_user WHERE is_deleted != '1' and role_id ="1370562810882502657"</select>
</mapper>
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java
@@ -72,4 +72,6 @@
     * @return
     */
    List<Map<String,Object>> selectAlarmSum(ConditionVo conditionVo);
    List queryPolice();
}
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java
@@ -141,4 +141,9 @@
        //返回数据
        return null;
    }
    @Override
    public List queryPolice() {
        return baseMapper.queryPolice();
    }
}