From 94fc23eba4055c02a18ee5b1550fa723b4495e22 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Wed, 17 Mar 2021 19:16:42 +0800
Subject: [PATCH] 警情分发
---
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java | 2 +
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.xml | 43 ++++++++++++---------
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java | 2 +
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java | 5 ++
blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java | 32 ++++++++++++++++
5 files changed, 66 insertions(+), 18 deletions(-)
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
index 82e8aec..3cb02e4 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java
+++ b/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));
}
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java
index 5311484..973d671 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/mapper/AlarmMapper.java
+++ b/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();
}
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 e8e1b6e..2f51aa4 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
@@ -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 >#{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>
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java
index 9c8ae12..cc97bf7 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/IAlarmService.java
+++ b/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();
}
diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java
index 68f1a52..47bb13c 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/service/impl/AlarmServiceImpl.java
+++ b/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();
+ }
}
--
Gitblit v1.9.3