From e2a1dfdf96e9d81baf537ae49d5ef21208170b11 Mon Sep 17 00:00:00 2001
From: Junjie <xjj@123>
Date: 星期三, 03 四月 2024 12:49:48 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/Four-Way-Rack' into Four-Way-Rack
---
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/config/WebSocketConfig.java | 5 --
zy-asrs-flow/src/pages/map/websocket.js | 42 +++++++++++++++++++++
zy-asrs-flow/src/pages/map/index.jsx | 3 +
zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/websocket/MapWebsocket.java | 37 ++++++++++++++++++
4 files changed, 82 insertions(+), 5 deletions(-)
diff --git a/zy-asrs-flow/src/pages/map/index.jsx b/zy-asrs-flow/src/pages/map/index.jsx
index 03d7388..5709878 100644
--- a/zy-asrs-flow/src/pages/map/index.jsx
+++ b/zy-asrs-flow/src/pages/map/index.jsx
@@ -15,6 +15,7 @@
import Edit from './components/device';
import Settings from './components/settings'
import * as Utils from './utils'
+import * as Websocket from './websocket'
import Player from './player';
import MapSearch from './header/search';
import MapFloor from './header/floor';
@@ -122,6 +123,8 @@
player.adaptScreen();
Utils.mapNotify(intl.formatMessage({ id: 'map.load.success', defaultMessage: '娆㈣繋浣跨敤WCS绯荤粺' }));
}, 200)
+
+ Websocket.createWs();
}
initialize();
}, []);
diff --git a/zy-asrs-flow/src/pages/map/websocket.js b/zy-asrs-flow/src/pages/map/websocket.js
new file mode 100644
index 0000000..20dea9b
--- /dev/null
+++ b/zy-asrs-flow/src/pages/map/websocket.js
@@ -0,0 +1,42 @@
+export const createWs = () => {
+ console.log('Creating WebSocket connection...');
+ const webSocket = new WebSocket('ws://127.0.0.1:9090/wcs/map/websocket');
+
+ // 杩炴帴鎵撳紑鏃惰Е鍙�
+ webSocket.onopen = function (event) {
+ console.log('WebSocket connection opened:', event);
+ // 鍦ㄦ娣诲姞鍙互鍦ㄨ繛鎺ユ墦寮�鏃跺彂閫佺殑浠讳綍娑堟伅
+ // webSocket.send('Hello Server!');
+ };
+
+ // 浠庢湇鍔″櫒鎺ユ敹鍒版秷鎭椂瑙﹀彂
+ webSocket.onmessage = function (event) {
+ console.log('WebSocket message received:', event.data);
+ // 鍦ㄨ繖閲屽鐞嗘帴鏀跺埌鐨勬秷鎭�
+ };
+
+ // 鍑虹幇閿欒鏃惰Е鍙�
+ webSocket.onerror = function (event) {
+ console.error('WebSocket error observed:', event);
+ // 鍦ㄨ繖閲屽鐞哤ebSocket閿欒
+ };
+
+ // 杩炴帴鍏抽棴鏃惰Е鍙�
+ webSocket.onclose = function (event) {
+ console.log('WebSocket connection closed:', event);
+ // 鍦ㄨ繖閲屽鐞嗚繛鎺ュ叧闂簨浠�
+ // 浣犲彲鑳芥兂瑕侀噸鏂拌繛鎺ユ垨瀵圭敤鎴疯繘琛屽弸濂芥彁绀�
+ };
+
+ // 璇锋眰鍏抽棴WebSocket杩炴帴锛堜富鍔ㄥ叧闂級锛屼綘鍙互浠庡叾浠栧嚱鏁拌皟鐢ㄨ繖涓�
+ const closeWebSocket = () => {
+ if (webSocket.readyState === WebSocket.OPEN) {
+ webSocket.close(); // 杩欏皢瑙﹀彂'onclose'浜嬩欢
+ }
+ };
+
+ return {
+ webSocket,
+ closeWebSocket
+ };
+};
\ No newline at end of file
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/config/WebSocketConfig.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/config/WebSocketConfig.java
index 2df1e87..369166f 100644
--- a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/config/WebSocketConfig.java
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/common/config/WebSocketConfig.java
@@ -6,7 +6,6 @@
import org.springframework.web.socket.server.standard.ServerEndpointExporter;
@Configuration
-@EnableWebSocketMessageBroker
public class WebSocketConfig implements WebSocketMessageBrokerConfigurer {
@Bean
@@ -14,9 +13,5 @@
return new ServerEndpointExporter();
}
- @Override
- public void registerStompEndpoints(StompEndpointRegistry registry) {
- registry.addEndpoint("/api/socket");
- }
}
diff --git a/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/websocket/MapWebsocket.java b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/websocket/MapWebsocket.java
new file mode 100644
index 0000000..49dad31
--- /dev/null
+++ b/zy-asrs-wcs/src/main/java/com/zy/asrs/wcs/core/map/websocket/MapWebsocket.java
@@ -0,0 +1,37 @@
+package com.zy.asrs.wcs.core.map.websocket;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Component;
+
+import javax.websocket.OnClose;
+import javax.websocket.OnMessage;
+import javax.websocket.OnOpen;
+import javax.websocket.Session;
+import javax.websocket.server.ServerEndpoint;
+
+@Slf4j
+@Component
+@ServerEndpoint(value = "/map/websocket")
+public class MapWebsocket {
+
+ private Session session;
+ private String sessionId;
+
+ @OnOpen
+ public void onOpen(Session session) {
+ this.session = session;
+ this.sessionId = session.getId();
+ log.info("{} connected", this.sessionId);
+ }
+
+ @OnMessage
+ public void onMessage(String message, Session session) {
+ log.info("{} sendMsg:{}", this.sessionId, message);
+ }
+
+ @OnClose
+ public void onClose(Session session) {
+ log.info("{} closed", this.sessionId);
+ }
+
+}
--
Gitblit v1.9.1