From c422623743896020d819972e20895aea1896f823 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期四, 29 六月 2023 11:37:24 +0800
Subject: [PATCH] 井管理增加关联相机字段
---
ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java | 201 +++++++++++++++++++--------------
ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GuideTask.java | 22 +++
ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java | 3
ard-work/src/main/java/com/ruoyi/constant/CamPriority.java | 4
ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml | 7 +
ruoyi-admin/src/main/resources/application-ard.yml | 2
ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/domain/GuidePriorityQueue.java | 33 +++++
ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java | 6
ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/RadarAlarmData.java | 27 ++++
ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/PriorityQueueExample.java | 42 +++++++
10 files changed, 259 insertions(+), 88 deletions(-)
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/domain/GuidePriorityQueue.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/domain/GuidePriorityQueue.java
new file mode 100644
index 0000000..937237d
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/domain/GuidePriorityQueue.java
@@ -0,0 +1,33 @@
+package com.ruoyi.alarm.globalAlarm.domain;
+
+import com.ruoyi.alarm.globalAlarm.service.impl.GuideTask;
+
+import java.util.Comparator;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * @Description:
+ * @ClassName: PriorityQueue
+ * @Author: 鍒樿嫃涔�
+ * @Date: 2023骞�06鏈�29鏃�11:18
+ * @Version: 1.0
+ **/
+public class GuidePriorityQueue {
+ /**
+ * 鐩告満闃熷垪锛屾瘡涓浉鏈轰竴涓紭鍏堢骇闃熷垪
+ */
+ public static Map<String, java.util.PriorityQueue<GuideTask>> cameraQueueMap = new HashMap<>();
+
+ /**
+ * 鍒涘缓涓�涓嚜瀹氫箟鐨勬瘮杈冨櫒锛屾牴鎹紭鍏堢骇灞炴�ц繘琛屾瘮杈�
+ */
+ public static Comparator<GuideTask> getComparator() {
+ Comparator<GuideTask> PriorityDescCom = Comparator.comparingInt(GuideTask::getPriority).reversed();
+ Comparator<GuideTask> NumDescCom = Comparator.comparingInt(GuideTask::getNum).reversed();
+ Comparator<GuideTask> alarmTimeAscCom = Comparator.comparing(GuideTask::getAlarmTime);
+ Comparator<GuideTask> Comparator = PriorityDescCom.thenComparing(NumDescCom).thenComparing(alarmTimeAscCom);
+ return Comparator;
+ }
+
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
index 5d24727..90cbeb2 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GlobalAlarmServiceImpl.java
@@ -7,6 +7,7 @@
import com.ruoyi.alarm.globalAlarm.domain.GlobalAlarmData;
import com.ruoyi.alarm.globalAlarm.service.IGlobalAlarmService;
import com.ruoyi.alarm.radarAlarm.domain.ArdAlarmRadar;
+import com.ruoyi.alarm.radarAlarm.domain.RadarAlarmData;
import com.ruoyi.alarm.radarAlarm.mapper.ArdAlarmRadarMapper;
import com.ruoyi.alarm.stealAlarm.domain.ArdAlarmStealelec;
import com.ruoyi.alarm.stealAlarm.mapper.ArdAlarmStealelecMapper;
@@ -119,7 +120,7 @@
})
.collect(Collectors.toList());
case 1003:
- List<ArdAlarmRadar> ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime,"杩愬姩鐩爣妫�娴�");
+ List<ArdAlarmRadar> ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "杩愬姩鐩爣妫�娴�");
return ardAlarmRadars.stream()
.map(ardAlarmRadar -> {
GlobalAlarmData globalAlarmData = new GlobalAlarmData()
@@ -134,7 +135,7 @@
})
.collect(Collectors.toList());
case 1004:
- ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime,"鐑簮妫�娴�");
+ ardAlarmRadars = ardAlarmRadarMapper.selectListAllByCommand(refreshTime, "鐑簮妫�娴�");
return ardAlarmRadars.stream()
.map(ardAlarmRadar -> {
GlobalAlarmData globalAlarmData = new GlobalAlarmData()
@@ -214,17 +215,11 @@
@Async("alarmExecutor")
public void receiveAlarm(String topic, String message) {
try {
- String simpleUUID = IdUtils.simpleUUID();
switch (topic) {
case "stealelec":
//region 澶勭悊鐩楃數鎶ヨ
ArdAlarmStealelec ardAlarmStealelec = JSONObject.parseObject(message, ArdAlarmStealelec.class);
- ArdAlarmpointsWell well = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(ardAlarmStealelec.getDescribe());
- if (well != null) {
- ardAlarmStealelec.setLongitude(well.getLongitude());
- ardAlarmStealelec.setLatitude(well.getLatitude());
- ardAlarmStealelec.setAltitude(well.getAltitude());
- }
+
ArdAlarmStealelec existe = ardAlarmStealelecMapper.selectByPrimaryKey(ardAlarmStealelec.getId());
if (StringUtils.isNotNull(existe)) {
return;
@@ -232,18 +227,27 @@
int aas = ardAlarmStealelecMapper.insertArdAlarmStealelec(ardAlarmStealelec);
if (aas > 0) {
log.info("stealelec鍏ュ簱鎴愬姛锛�" + ardAlarmStealelec);
- //寮曞褰曞儚
- CameraCmd cmd = new CameraCmd();
- cmd.setRecordBucketName("record");
- cmd.setRecordObjectName("stealelec");
- cmd.setOperator("sys_steal_elec");
- cmd.setExpired(30);
- cmd.setTargetPosition(new double[]{well.getLongitude(), well.getLatitude(), well.getAltitude()});
- String url = guideCamera(cmd);
- if (StringUtils.isNotEmpty(url)) {
- //鏇存柊褰曞儚
- ardAlarmStealelec.setRecordUrl(url);
- ardAlarmStealelecMapper.updateArdAlarmStealelec(ardAlarmStealelec);
+ ArdAlarmpointsWell well = ardAlarmpointsWellMapper.selectArdAlarmpointsWellByWellId(ardAlarmStealelec.getDescribe());
+ if (well != null) {
+ ardAlarmStealelec.setLongitude(well.getLongitude());
+ ardAlarmStealelec.setLatitude(well.getLatitude());
+ ardAlarmStealelec.setAltitude(well.getAltitude());
+ //寮曞褰曞儚
+ CameraCmd cmd = new CameraCmd();
+ cmd.setRecordBucketName("record");
+ cmd.setRecordObjectName("stealelec");
+ cmd.setOperator("sys_steal_elec");
+ cmd.setExpired(30);
+ cmd.setTargetPosition(new double[]{well.getLongitude(), well.getLatitude(), well.getAltitude()});
+ boolean res = guideCamera(cmd);
+ if (res) {
+ String url = alarmToRecord(cmd);
+ if (StringUtils.isNotEmpty(url)) {
+ //鏇存柊褰曞儚
+ ardAlarmStealelec.setRecordUrl(url);
+ ardAlarmStealelecMapper.updateArdAlarmStealelec(ardAlarmStealelec);
+ }
+ }
}
}
//endregion
@@ -251,7 +255,7 @@
case "tube":
//region 澶勭悊绠$嚎娉勯湶鎶ヨ
ArdAlarmTube ardAlarmTube = JSONObject.parseObject(message, ArdAlarmTube.class);
- ardAlarmTube.setId(simpleUUID);
+ ardAlarmTube.setId(IdUtils.simpleUUID());
ArdTubesDetails atd = new ArdTubesDetails();
atd.setReelNumber(ardAlarmTube.getTubeId());
List<ArdTubesDetails> ardTubesDetails = ardTubesDetailsMapper.selectArdTubesDetailsList(atd);
@@ -279,11 +283,14 @@
cmd.setOperator("sys_tube_leak");
cmd.setExpired(30);
cmd.setTargetPosition(new double[]{ardAlarmTube.getLongitude(), ardAlarmTube.getLatitude(), ardAlarmTube.getAltitude()});
- String url = guideCamera(cmd);
- //鏇存柊褰曞儚
- if (StringUtils.isNotEmpty(url)) {
- ardAlarmTube.setRecordUrl(url);
- ardAlarmTubeMapper.updateArdAlarmTube(ardAlarmTube);
+ boolean res = guideCamera(cmd);
+ if (res) {
+ String url = alarmToRecord(cmd);
+ if (StringUtils.isNotEmpty(url)) {
+ //鏇存柊褰曞儚
+ ardAlarmTube.setRecordUrl(url);
+ ardAlarmTubeMapper.updateArdAlarmTube(ardAlarmTube);
+ }
}
}
//endregion
@@ -291,7 +298,7 @@
case "camera":
//region 澶勭悊閫氱敤鍏夌數鎶ヨ
ArdAlarmCamera ardAlarmCamera = JSONObject.parseObject(message, ArdAlarmCamera.class);
- ardAlarmCamera.setId(simpleUUID);
+ ardAlarmCamera.setId(IdUtils.simpleUUID());
int aac = ardAlarmCameraMapper.insertArdAlarmCamera(ardAlarmCamera);
if (aac > 0) {
log.debug("camera鍏ュ簱鎴愬姛锛�" + ardAlarmCamera);
@@ -302,23 +309,45 @@
cmd.setOperator("sys_camera");
cmd.setExpired(30);
cmd.setTargetPosition(new double[]{ardAlarmCamera.getLongitude(), ardAlarmCamera.getLatitude()});
- String url = guideCamera(cmd);
- //鏇存柊褰曞儚
- if (StringUtils.isNotEmpty(url)) {
- ardAlarmCamera.setRecordUrl(url);
- ardAlarmCameraMapper.updateArdAlarmCamera(ardAlarmCamera);
+ boolean res = guideCamera(cmd);
+ if (res) {
+ String url = alarmToRecord(cmd);
+ if (StringUtils.isNotEmpty(url)) {
+ //鏇存柊褰曞儚
+ ardAlarmCamera.setRecordUrl(url);
+ ardAlarmCameraMapper.updateArdAlarmCamera(ardAlarmCamera);
+ }
}
}
//endregion
break;
case "radar":
//region 澶勭悊闆疯揪鎶ヨ
- ArdAlarmRadar ardAlarmRadar = JSONObject.parseObject(message, ArdAlarmRadar.class);
- ardAlarmRadar.setId(simpleUUID);
- int aar = ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
- if (aar > 0) {
- log.debug("radar鍏ュ簱鎴愬姛锛�" + ardAlarmRadar);
+ RadarAlarmData radarAlarmData = JSONObject.parseObject(message, RadarAlarmData.class);
+ List<ArdAlarmRadar> ardAlarmRadars = radarAlarmData.getArdAlarmRadars();
+ Map<String, Object> readyGuide = new HashMap<>();
+ for (ArdAlarmRadar ardAlarmRadar : ardAlarmRadars) {
+ ardAlarmRadar.setId(IdUtils.simpleUUID());
+ ardAlarmRadar.setAlarmTime(radarAlarmData.getAlarmTime());
+ int aar = ardAlarmRadarMapper.insertArdAlarmRadar(ardAlarmRadar);
+ if (aar > 0) {
+ log.debug("radar鍏ュ簱鎴愬姛锛�" + ardAlarmRadar);
+ }
+ readyGuide.put(ardAlarmRadar.getName(), ardAlarmRadar);//姣忎釜鎶ヨ鐐瑰彇鍑轰竴鏉℃姤璀�
}
+ //鑾峰彇姣忎釜鎶ヨ鐐瑰叧鑱旂殑鐩告満
+
+ //鍏堟壘鎶ヨ闆疯揪濉斾笂鐨勭浉鏈�
+ CameraCmd cmd = new CameraCmd();
+ cmd.setCameraId("1");
+ cmd.setChannelNum(1);
+ boolean b = guideCamera(cmd);
+
+ //鍐嶆壘鎶ヨ鐐瑰叧鑱旂殑鐩告満
+ cmd.setCameraId("2");
+ cmd.setChannelNum(1);
+ boolean b1 = guideCamera(cmd);
+
//endregion
break;
}
@@ -329,14 +358,13 @@
/**
* @鎻忚堪 寮曞鏈�杩戠殑澶у厜鐢垫寚鍚戠洰鏍�
- * @鍙傛暟 [targetPosition]
- * @杩斿洖鍊� java.lang.String
+ * @鍙傛暟 [cmd]
+ * @杩斿洖鍊� boolean
* @鍒涘缓浜� 鍒樿嫃涔�
- * @鍒涘缓鏃堕棿 2023/6/15 11:55
+ * @鍒涘缓鏃堕棿 2023/6/28 16:34
* @淇敼浜哄拰鍏跺畠淇℃伅
*/
- private String guideCamera(CameraCmd cmd) {
- String url = "";
+ private boolean guideCamera(CameraCmd cmd) {
try {
String dayNightTime = redisCache.getCacheObject("sys_config:dayNightTime");
//鑾峰彇鎵�鏈夊ぇ鍏夌數
@@ -362,33 +390,52 @@
log.debug("鏌ユ壘鍒版渶杩戝厜鐢�:" + minDistanceCameraId + "锛屽皾璇曞紩瀵�");
if (guideMap.get(minDistanceCameraId).equals(0)) {
log.debug("璇ュ厜鐢垫湭寮�鍚姤璀﹀紩瀵�");
- return "";
+ return false;
}
//寮曞鍏夌數
cmd.setCameraId(minDistanceCameraId);
cmd.setChannelNum(ArdTool.getChannelBydayNightTime(dayNightTime));
boolean guideRes = hikClientService.guideTargetPosition(cmd);
- if (guideRes) {
- log.debug("寮曞鎴愬姛锛屽皾璇曞綍鍍�");
- hikClientService.controlLock(cmd);//涓婇攣
- cmd.setEnable(true);//寮�濮嬪綍鍍�
- hikClientService.recordToMinio(cmd);//寮�濮嬪綍鍍�
- GlobalVariable.threadMap.put(minDistanceCameraId, Thread.currentThread().getName());//灏嗙浉鏈篿d涓庡綋鍓嶅鐞嗙嚎绋嬪悕绉扮粦瀹�
- Thread.sleep(cmd.getExpired() * 1000);//褰曞儚鏃堕暱
- String thread = GlobalVariable.threadMap.get(minDistanceCameraId);
- String currentThread = Thread.currentThread().getName();
- //鍒ゆ柇鐩告満缁戝畾绾跨▼鏄惁鏄綋鍓嶇嚎绋嬶紝濡傛灉鏄紝鍋滄褰曞儚锛屽鏋滀笉鏄紝璇存槑鐩告満琚叾浠栫嚎绋嬫姠鍗狅紝涓嶅仠姝㈠綍鍍�
- if (thread.equals(currentThread)) {
- cmd.setEnable(false);//鍋滄褰曞儚
- cmd.setUploadMinio(true);//涓婁紶minio
- url = hikClientService.recordToMinio(cmd);//鍋滄褰曞儚杩斿洖url
- }
- }
+ return guideRes;
+
} else {
log.debug("鏈煡鎵惧埌鏈�杩戝厜鐢�");
+ return false;
}
} catch (Exception ex) {
log.error("寮曞寮傚父:" + ex.getMessage());
+ return false;
+ }
+ }
+
+ /**
+ * @鎻忚堪 鎶ヨ褰曞儚
+ * @鍙傛暟 [cmd]
+ * @杩斿洖鍊� java.lang.String
+ * @鍒涘缓浜� 鍒樿嫃涔�
+ * @鍒涘缓鏃堕棿 2023/6/28 16:33
+ * @淇敼浜哄拰鍏跺畠淇℃伅
+ */
+ public String alarmToRecord(CameraCmd cmd) {
+ String url = "";
+ try {
+ log.debug("寮曞鎴愬姛锛屽皾璇曞綍鍍�");
+ String cameraId = cmd.getCameraId();
+ hikClientService.controlLock(cmd);//涓婇攣
+ cmd.setEnable(true);//寮�濮嬪綍鍍�
+ hikClientService.recordToMinio(cmd);//寮�濮嬪綍鍍�
+ GlobalVariable.threadMap.put(cameraId, Thread.currentThread().getName());//灏嗙浉鏈篿d涓庡綋鍓嶅鐞嗙嚎绋嬪悕绉扮粦瀹�
+ Thread.sleep(cmd.getExpired() * 1000);//褰曞儚鏃堕暱
+ String thread = GlobalVariable.threadMap.get(cameraId);
+ String currentThread = Thread.currentThread().getName();
+ //鍒ゆ柇鐩告満缁戝畾绾跨▼鏄惁鏄綋鍓嶇嚎绋嬶紝濡傛灉鏄紝鍋滄褰曞儚锛屽鏋滀笉鏄紝璇存槑鐩告満琚叾浠栫嚎绋嬫姠鍗狅紝涓嶅仠姝㈠綍鍍�
+ if (thread.equals(currentThread)) {
+ cmd.setEnable(false);//鍋滄褰曞儚
+ cmd.setUploadMinio(true);//涓婁紶minio
+ url = hikClientService.recordToMinio(cmd);//鍋滄褰曞儚杩斿洖url
+ }
+ } catch (Exception ex) {
+ log.error("褰曞儚寮傚父:" + ex.getMessage());
}
return url;
}
@@ -410,9 +457,9 @@
countMap.put("1001", count1001);
int count1002 = ardAlarmCameraMapper.selectCountByAlarmTime(refreshTime);
countMap.put("1002", count1002);
- int count1003 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime,"杩愬姩鐩爣妫�娴�");
+ int count1003 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime, "杩愬姩鐩爣妫�娴�");
countMap.put("1003", count1003);
- int count1004 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime,"鐑簮妫�娴�");
+ int count1004 = ardAlarmRadarMapper.selectCountByAlarmTime(refreshTime, "鐑簮妫�娴�");
countMap.put("1004", count1004);
int count1014 = ardAlarmTubeMapper.selectCountByAlarmTime(refreshTime);
countMap.put("1014", count1014);
@@ -420,6 +467,14 @@
return map;
}
+ /**
+ * @鎻忚堪 鍘嗗彶鎶ヨ鏌ヨ
+ * @鍙傛暟 [command, beginTime, endTime, pageNum, pageSize]
+ * @杩斿洖鍊� java.lang.Object
+ * @鍒涘缓浜� 鍒樿嫃涔�
+ * @鍒涘缓鏃堕棿 2023/6/28 13:30
+ * @淇敼浜哄拰鍏跺畠淇℃伅
+ */
@Override
public Object selectAlarmList(Integer command, String beginTime, String endTime, Integer pageNum, Integer pageSize) {
Map<String, Object> params = new HashMap<>();
@@ -465,28 +520,6 @@
return ardAlarmTubes;
}
return null;
- }
-
- public static void main(String[] args) {
- // 缁欏畾鍧愭爣 A
- double Ax = 0;
- double Ay = 0;
-
- // 缁欏畾瑙掑害锛堜互搴︿负鍗曚綅锛�
- double angle = 45;
-
- // 缁欏畾璺濈
- double distance = 1.414;
-
- // 灏嗚搴﹁浆鎹负寮у害
- double radians = Math.toRadians(angle);
-
- // 璁$畻 B 鍧愭爣
- double Bx = Ax + distance * Math.cos(radians);
- double By = Ay + distance * Math.sin(radians);
-
- // 杈撳嚭缁撴灉
- System.out.println("鍧愭爣 B: (" + Bx + ", " + By + ")");
}
}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GuideTask.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GuideTask.java
new file mode 100644
index 0000000..56ea080
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/GuideTask.java
@@ -0,0 +1,22 @@
+package com.ruoyi.alarm.globalAlarm.service.impl;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+
+/**
+ * @Description: 寮曞浠诲姟
+ * @ClassName: GuideTask
+ * @Author: 鍒樿嫃涔�
+ * @Date: 2023骞�06鏈�29鏃�11:05
+ * @Version: 1.0
+ **/
+@Data
+@AllArgsConstructor
+public class GuideTask {
+
+ String alarmId;
+ String alarmType;
+ Integer priority;
+ String alarmTime;
+ Integer num;
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/PriorityQueueExample.java b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/PriorityQueueExample.java
new file mode 100644
index 0000000..fa468d4
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/service/impl/PriorityQueueExample.java
@@ -0,0 +1,42 @@
+package com.ruoyi.alarm.globalAlarm.service.impl;
+import com.ruoyi.alarm.globalAlarm.domain.GuidePriorityQueue;
+import java.util.Comparator;
+import java.util.PriorityQueue;
+/**
+ * @Description:
+ * @ClassName: PriorityQueueExample
+ * @Author: 鍒樿嫃涔�
+ * @Date: 2023骞�06鏈�29鏃�10:41
+ * @Version: 1.0
+ **/
+
+public class PriorityQueueExample {
+ public static void main(String[] args) {
+
+ Comparator<GuideTask> comparator = GuidePriorityQueue.getComparator();
+ // 鍒涘缓鐩告満1鐨勪紭鍏堢骇闃熷垪锛屽苟浼犲叆鑷畾涔夌殑姣旇緝鍣�
+ PriorityQueue<GuideTask> queue1 = new PriorityQueue<>(comparator);
+ // 娣诲姞瀵硅薄鍒伴槦鍒椾腑
+ GuideTask task1 = new GuideTask("task1", "radar", 999, "2023-06-29 11:10:00", 1);
+ GuideTask task2 = new GuideTask("task2", "radar", 999, "2023-06-29 11:11:00", 2);
+ GuideTask task3 = new GuideTask("task3", "radar", 999, "2023-06-29 11:12:00", 1);
+ GuideTask task4 = new GuideTask("task4", "radar", 888, "2023-06-29 11:13:00", 3);
+ queue1.add(task1);
+ queue1.add(task2);
+ queue1.add(task3);
+ queue1.add(task4);
+
+
+ GuidePriorityQueue.cameraQueueMap.put("鐩告満1", queue1);
+
+ for (String camera : GuidePriorityQueue.cameraQueueMap.keySet()) {
+ PriorityQueue<GuideTask> queue = GuidePriorityQueue.cameraQueueMap.get(camera);
+
+ // 渚濇鍙栧嚭闃熷垪涓殑瀵硅薄骞舵墦鍗�
+ while (!queue.isEmpty()) {
+ GuideTask obj = queue.poll();
+ System.out.println(obj.getAlarmId() + " - Priority: " + obj.getPriority() + "- Num:" + obj.getNum() + "- time-" + obj.getAlarmTime());
+ }
+ }
+ }
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java
index 9229d29..c41e78d 100644
--- a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/ArdAlarmRadar.java
@@ -1,10 +1,10 @@
package com.ruoyi.alarm.radarAlarm.domain;
import java.util.Date;
+import java.util.List;
+
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
-import org.apache.commons.lang3.builder.ToStringBuilder;
-import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
@@ -70,4 +70,6 @@
*/
private Integer count;
+
+
}
diff --git a/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/RadarAlarmData.java b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/RadarAlarmData.java
new file mode 100644
index 0000000..2d8da84
--- /dev/null
+++ b/ard-work/src/main/java/com/ruoyi/alarm/radarAlarm/domain/RadarAlarmData.java
@@ -0,0 +1,27 @@
+package com.ruoyi.alarm.radarAlarm.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import lombok.Data;
+
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @Description:
+ * @ClassName: radarAlarmInfos
+ * @Author: 鍒樿嫃涔�
+ * @Date: 2023骞�06鏈�28鏃�13:48
+ * @Version: 1.0
+ **/
+@Data
+public class RadarAlarmData {
+
+ /** 鎶ヨ鏃堕棿 */
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @Excel(name = "鎶ヨ鏃堕棿", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
+ private Date alarmTime;
+
+ private List<ArdAlarmRadar> ardAlarmRadars;
+
+}
diff --git a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java
index 514a55c..84b69d2 100644
--- a/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java
+++ b/ard-work/src/main/java/com/ruoyi/alarmpoints/well/domain/ArdAlarmpointsWell.java
@@ -93,4 +93,7 @@
/** 鐢ㄦ埛id */
private String userId;
+
+ /** 鍏宠仈鐩告満ID */
+ private String cameraId;
}
diff --git a/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java b/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java
index 9c96fb2..6ccff29 100644
--- a/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java
+++ b/ard-work/src/main/java/com/ruoyi/constant/CamPriority.java
@@ -1,7 +1,10 @@
package com.ruoyi.constant;
+import com.ruoyi.alarm.globalAlarm.service.impl.GuideTask;
+
import java.util.HashMap;
import java.util.Map;
+import java.util.PriorityQueue;
/**
* @Description: 鐩告満鎺у埗浼樺厛绾�
@@ -11,6 +14,7 @@
* @Version: 1.0
**/
public class CamPriority {
+
public static Map<String,Object> priorityMap=new HashMap<>();
static {
priorityMap.put("sys_radar_fire",999);//闆疯揪闃茬伀鎶ヨ
diff --git a/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml b/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
index a471902..5bbf963 100644
--- a/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
+++ b/ard-work/src/main/resources/mapper/alarmpoints/ArdAlarmpointsWellMapper.xml
@@ -28,6 +28,7 @@
<result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
+ <result property="cameraId" column="camera_id"/>
</resultMap>
<sql id="selectArdAlarmpointsWellVo">
@@ -53,7 +54,8 @@
c.create_by,
c.create_time,
c.update_by,
- c.update_time
+ c.update_time,
+ c.camera_id
from ard_alarmpoints_well c
left join sys_dept d on d.dept_id = c.dept_id
left join sys_user u on u.user_id = c.user_id
@@ -115,6 +117,7 @@
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
+ <if test="cameraId != null">camera_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null">#{id},</if>
@@ -140,6 +143,7 @@
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
+ <if test="cameraId != null">#{cameraId},</if>
</trim>
</insert>
@@ -168,6 +172,7 @@
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
+ <if test="cameraId != null">camera_id = #{cameraId},</if>
</trim>
where well_id = #{wellId}
</update>
diff --git a/ruoyi-admin/src/main/resources/application-ard.yml b/ruoyi-admin/src/main/resources/application-ard.yml
index 009f450..aa1d61b 100644
--- a/ruoyi-admin/src/main/resources/application-ard.yml
+++ b/ruoyi-admin/src/main/resources/application-ard.yml
@@ -20,7 +20,7 @@
clientId: m3
username: admin
password: xzx12345
- topic: tube,stealelec
+ topic: tube,stealelec,radar
timeout: 100
keepalive: 60
enabled: true
--
Gitblit v1.9.3