From c4948017824b1efa71faeb163e3609bec91f5719 Mon Sep 17 00:00:00 2001
From: cuikaidong <ckd2942379034@163.com>
Date: 星期五, 15 八月 2025 10:02:00 +0800
Subject: [PATCH] MDC,IOT合并

---
 lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java |   20 ++++++++++++++++++--
 1 files changed, 18 insertions(+), 2 deletions(-)

diff --git a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java
index b2ccf23..fe881f7 100644
--- a/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java
+++ b/lxzn-module-system/lxzn-system-biz/src/main/java/org/jeecg/modules/message/websocket/WebSocket.java
@@ -1,7 +1,9 @@
 package org.jeecg.modules.message.websocket;
 
+import java.util.HashMap;
 import java.util.Map;
 import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.CopyOnWriteArraySet;
 import javax.annotation.Resource;
 import javax.websocket.*;
 import javax.websocket.server.PathParam;
@@ -23,7 +25,8 @@
 @Slf4j
 @ServerEndpoint("/websocket/{userId}")
 public class WebSocket {
-    
+
+    private static CopyOnWriteArraySet<WebSocket> webSockets =new CopyOnWriteArraySet<>();
     /**绾跨▼瀹夊叏Map*/
     private static ConcurrentHashMap<String, Session> sessionPool = new ConcurrentHashMap<>();
 
@@ -33,6 +36,7 @@
     public static final String REDIS_TOPIC_NAME = "socketHandler";
     @Resource
     private JeecgRedisClient jeecgRedisClient;
+    private Session session;
 
 
     //==========銆恮ebsocket鎺ュ彈銆佹帹閫佹秷鎭瓑鏂规硶 鈥斺�� 鍏蜂綋鏈嶅姟鑺傜偣鎺ㄩ�亀s娑堟伅銆�========================================================================================
@@ -187,5 +191,17 @@
         }
     }
     //=======銆愰噰鐢╮edis鍙戝竷璁㈤槄妯″紡鈥斺�旀帹閫佹秷鎭��==========================================================================================
-    
+    // 姝や负骞挎挱娑堟伅
+    public void sendAllMessage(String message) {
+//    	log.info("銆恮ebsocket娑堟伅銆戝箍鎾秷鎭�:"+message);
+        for(WebSocket webSocket : webSockets) {
+            try {
+                if(webSocket.session.isOpen()) {
+                    webSocket.session.getAsyncRemote().sendText(message);
+                }
+            } catch (Exception e) {
+                e.printStackTrace();
+            }
+        }
+    }
 }
\ No newline at end of file

--
Gitblit v1.9.3