From 70210b0eb0c58e1779fd89cbcf0909154d7d4936 Mon Sep 17 00:00:00 2001
From: ‘liusuyi’ <1951119284@qq.com>
Date: 星期六, 01 七月 2023 11:45:18 +0800
Subject: [PATCH] 基本完成优先级排队报警逻辑

---
 ard-work/src/main/java/com/ruoyi/alarm/globalAlarm/domain/GuidePriorityQueue.java |   25 +++++++++++++++----------
 1 files changed, 15 insertions(+), 10 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
index 1ba629f..210c939 100644
--- 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
@@ -1,11 +1,12 @@
 package com.ruoyi.alarm.globalAlarm.domain;
 
+import lombok.AllArgsConstructor;
+import lombok.Data;
 import lombok.extern.slf4j.Slf4j;
 
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.PriorityQueue;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
+import java.util.*;
 import java.util.concurrent.PriorityBlockingQueue;
 
 /**
@@ -15,7 +16,7 @@
  * @Date: 2023骞�06鏈�29鏃�11:18
  * @Version: 1.0
  **/
-@Slf4j
+@Slf4j(topic = "guideQueue")
 public class GuidePriorityQueue {
     /**
      * 鐩告満闃熷垪锛屾瘡涓浉鏈轰竴涓紭鍏堢骇闃熷垪
@@ -28,8 +29,8 @@
     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);
+        Comparator<GuideTask> receiveTimeAscCom = Comparator.comparing(GuideTask::getReceiveTime);
+        Comparator<GuideTask> Comparator = PriorityDescCom.thenComparing(NumDescCom).thenComparing(receiveTimeAscCom);
         return Comparator;
     }
 
@@ -39,9 +40,13 @@
     public static void printPriorityQueue() {
         for (String cameraId : GuidePriorityQueue.cameraQueueMap.keySet()) {
             PriorityBlockingQueue<GuideTask> priorityQueue = GuidePriorityQueue.cameraQueueMap.get(cameraId);
-            for (GuideTask task : priorityQueue) {
-                log.info("alarmId:" + task.getAlarmId() + "  alarmTime:" + task.getAlarmTime() + "  priority:" + task.getPriority() + "  num:" + task.getNum() + "  cameraId:" + task.getCameraId());
+            PriorityBlockingQueue<GuideTask> queue = new PriorityBlockingQueue<>(priorityQueue);
+            while (queue.size() > 0) {
+                GuideTask task = queue.poll();
+                log.info("姝e湪鎺掗槦銆恈ameraId銆�" + task.getCameraId()+"銆恆larmId銆�" + task.getAlarmId() + "銆恟eceiveTime銆�" + task.getReceiveTime()
+                        + "銆恆larmType銆�" + task.getAlarmType() + "銆恜riority銆�" + task.getPriority() + "銆恘um銆�" + task.getNum()
+                        + "銆恈han銆�" + task.getChanNum() + "銆恟ecordSn銆�" + task.getRecordSn());
             }
         }
     }
-}
+}
\ No newline at end of file

--
Gitblit v1.9.3