From e0d1a9a05fee8ef75ce8f5bd7107be32ec8c8e82 Mon Sep 17 00:00:00 2001
From: tangzy <tangzy123456>
Date: Sat, 20 Mar 2021 08:55:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java |   48 ++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 48 insertions(+), 0 deletions(-)

diff --git a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java
index e8285aa..91a096f 100644
--- a/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java
+++ b/blade-service/blade-jfpts/src/main/java/org/springblade/jfpt/nettyServer/ServerHandler.java
@@ -100,6 +100,7 @@
 	 */
 	@Override
 	public void channelRead(ChannelHandlerContext channelHandlerContext, Object info) throws Exception {
+		long startTime1 = System.currentTimeMillis();
 		System.out.println("接收到了:" + info);
 		ByteBuf buf = (ByteBuf) info;
 		byte[] req = new byte[buf.readableBytes()];
@@ -140,6 +141,7 @@
 			List<String> outData = new ArrayList<>();
 			switch (content.substring(0, 2)) {
 				case "LA": {
+					System.out.println("按下按钮+++++++++++++++++++++++++++++++++");
 					String devId = content.substring(10, 22);
 					//String fqbm = content.substring(24, 26);
 					String d = content.substring(26, 27);
@@ -1692,9 +1694,55 @@
 							break;
 					}
 
+					//警情分发测试代码
+					//查询所有闲置的接警员
+					List<Map<String, Object>> policeList = serverHandler.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));
+						}
+					}
+
+
+					if (online_police.size() == 0){
+						online_police = policeList;
+					}
+
+					List policeIdArr = new ArrayList();
+
+					//将闲置状态的人员id存入数组
+					for (int i = 0; i < online_police.size(); i++) {
+						policeIdArr.add(online_police.get(i).get("id"));
+					}
+
+					//通过id计算接警员最后一次接警时间,倒序返回闲置最久的人员,派发任务
+					List<Map<String, Object>> police = serverHandler.alarmService.queryPoliceTime(policeIdArr);
+
+					if (police.size() != 0){
+						alarm.setAlarmId( police.get(0).get("alarmId").toString());
+						alarm.setAlarmPeople( police.get(0).get("alarmPeople").toString());
+//						Date date = new Date();
+//						SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//						alarm.setJjTime(dateFormat.format(date));
+
+						serverHandler.alarmService.updatePoliceStatus( police.get(0).get("alarmId").toString(),"1");
+					}else {
+						alarm.setAlarmId( online_police.get(0).get("id").toString());
+						alarm.setAlarmPeople(online_police.get(0).get("name").toString());
+//						Date date = new Date();
+//						SimpleDateFormat dateFormat=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//						alarm.setJjTime(dateFormat.format(date));
+
+						serverHandler.alarmService.updatePoliceStatus(online_police.get(0).get("id").toString(),"1");
+					}
+
 					serverHandler.alarmService.s(alarm);
 					outData.add("LEOK#@");
+					long endTime1 = System.currentTimeMillis();    //获取结束时间
 
+					System.out.println("代码运行时间:" + (endTime1 - startTime1) + "ms");    //输出程序运行时间
 					break;
 				}
 				case "LD": {

--
Gitblit v1.9.3