From 86e79681da9c98bd08bd1f2be0c6dbd3f3dd3159 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期六, 07 三月 2026 13:47:31 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/utils/NotifyUtils.java |   52 +++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 41 insertions(+), 11 deletions(-)

diff --git a/src/main/java/com/zy/asrs/utils/NotifyUtils.java b/src/main/java/com/zy/asrs/utils/NotifyUtils.java
index c573ccf..4bda147 100644
--- a/src/main/java/com/zy/asrs/utils/NotifyUtils.java
+++ b/src/main/java/com/zy/asrs/utils/NotifyUtils.java
@@ -13,6 +13,7 @@
 import org.springframework.stereotype.Component;
 
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.Set;
 
@@ -40,7 +41,7 @@
             return null;
         }
 
-        Set keys = redisUtil.keys(key + "*");
+        Set keys = redisUtil.keys(key + "_*");
         if (keys == null) {
             return null;
         }
@@ -52,23 +53,52 @@
         return list;
     }
 
-    public String getKey(String notifyType, Integer device) {
-        String key = null;
+    public List<String> getSupportedNotifyTypes() {
+        return Arrays.asList(
+                String.valueOf(SlaveType.Crn),
+                String.valueOf(SlaveType.Devp),
+                String.valueOf(SlaveType.DualCrn),
+                String.valueOf(SlaveType.Rgv),
+                "task"
+        );
+    }
+
+    public String getKeyPrefix(String notifyType) {
         if (notifyType.equals(String.valueOf(SlaveType.Crn))) {
-            key = RedisKeyType.QUEUE_CRN.key + device;
+            return RedisKeyType.QUEUE_CRN.key;
         } else if (notifyType.equals(String.valueOf(SlaveType.Devp))) {
-            key = RedisKeyType.QUEUE_DEVP.key + device;
+            return RedisKeyType.QUEUE_DEVP.key;
         } else if (notifyType.equals(String.valueOf(SlaveType.DualCrn))) {
-            key = RedisKeyType.QUEUE_DUAL_CRN.key + device;
+            return RedisKeyType.QUEUE_DUAL_CRN.key;
         } else if (notifyType.equals(String.valueOf(SlaveType.Rgv))) {
-            key = RedisKeyType.QUEUE_RGV.key + device;
+            return RedisKeyType.QUEUE_RGV.key;
         } else if (notifyType.equals("task")) {
-            key = RedisKeyType.QUEUE_TASK.key + device;
-        } else {
+            return RedisKeyType.QUEUE_TASK.key;
+        }
+        return null;
+    }
+
+    public String getNotifyTypeDesc(String notifyType) {
+        if (notifyType.equals(String.valueOf(SlaveType.Crn))) {
+            return "鍫嗗灈鏈�";
+        } else if (notifyType.equals(String.valueOf(SlaveType.Devp))) {
+            return "杈撻�佺嚎";
+        } else if (notifyType.equals(String.valueOf(SlaveType.DualCrn))) {
+            return "鍙屼几浣嶅爢鍨涙満";
+        } else if (notifyType.equals(String.valueOf(SlaveType.Rgv))) {
+            return "RGV";
+        } else if (notifyType.equals("task")) {
+            return "浠诲姟";
+        }
+        return notifyType;
+    }
+
+    public String getKey(String notifyType, Integer device) {
+        String prefix = getKeyPrefix(notifyType);
+        if (prefix == null) {
             return null;
         }
-
-        return key;
+        return prefix + device;
     }
 
     private boolean append(String notifyType, Integer device, String taskNo, String superTaskNo, NotifyMsgType msgType, String data) {

--
Gitblit v1.9.1