From 80be018676ee9063820f2edf5a71d7d422ab3451 Mon Sep 17 00:00:00 2001
From: zengh <123456>
Date: Thu, 18 Mar 2021 18:18:47 +0800
Subject: [PATCH] 报警分发接口调整

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/alarm/controller/AlarmController.java |   37 ++++++++++++++++++++++++++-----------
 1 files changed, 26 insertions(+), 11 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 39d3519..bcc5948 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
@@ -169,30 +169,45 @@
 
 
 		//警情分发测试代码
-		//查询所有在线的接警员
+		//查询所有闲置的接警员
 		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"));
+				//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");
+		List policeIdArr = new ArrayList();
 
-		alarm.setAlarmPeople(name);
-		alarm.setAlarmId(name);
+		//将闲置状态的人员id存入数组
+		for (int i = 0; i < online_police.size(); i++) {
+			policeIdArr.add(online_police.get(i).get("id"));
+		}
+
+		//通过id计算接警员最后一次接警时间,倒序返回闲置最久的人员,派发任务
+		List<Map<String, Object>> police = alarmService.queryPoliceTime(policeIdArr);
+
+		if (police.size() != 0){
+			alarm.setAlarmId((String) police.get(0).get("alarmId"));
+			alarm.setAlarmPeople((String) police.get(0).get("alarmPeople"));
+			Date date = new Date();
+			SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+			alarm.setJjTime(dateFormat.format(date));
+		}else {
+			alarm.setAlarmId((String) online_police.get(0).get("id"));
+			alarm.setAlarmPeople((String) online_police.get(0).get("name"));
+			Date date = new Date();
+			SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+			alarm.setJjTime(dateFormat.format(date));
+		}
+
 
 		return null;
 		//return R.status(alarmService.saveOrUpdate(alarm));

--
Gitblit v1.9.3