From 96cfc17f191fee0a05070ec8e7bb6fb099f0231c Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期三, 24 十二月 2025 14:28:42 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 58 insertions(+), 1 deletions(-)
diff --git a/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java b/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java
index be15871..ba09508 100644
--- a/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java
+++ b/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java
@@ -1,6 +1,14 @@
package com.zy.asrs.ws;
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONObject;
+import com.core.common.R;
+import com.core.common.SpringUtils;
+import com.zy.asrs.controller.CrnController;
+import com.zy.asrs.controller.RgvController;
+import com.zy.asrs.controller.BasMapController;
+import com.zy.asrs.controller.ConsoleController;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
@@ -64,7 +72,56 @@
*/
@OnMessage
public void onMessage(String message, Session session) throws IOException {
-// log.info("鏀跺埌鏉ヨ嚜杩炴帴锛�" + sessionId + "鐨勪俊鎭�:" + message);
+ Object resObj = null;
+ String url = null;
+ try {
+ JSONObject req = JSON.parseObject(message);
+ url = req.getString("url");
+ if (url == null) {
+ return;
+ }
+ if (url.startsWith("/basMap/lev/") && url.endsWith("/auth")) {
+ String[] segs = url.split("/");
+ Integer lev = null;
+ for (int i = 0; i < segs.length; i++) {
+ if ("lev".equals(segs[i]) && i + 1 < segs.length) {
+ try {
+ lev = Integer.parseInt(segs[i + 1]);
+ } catch (Exception ignore) {}
+ break;
+ }
+ }
+ BasMapController basMapController = SpringUtils.getBean(BasMapController.class);
+ R r = basMapController.getByLev(lev);
+ resObj = r;
+ } else if ("/console/latest/data/station".equals(url)) {
+ ConsoleController consoleController = SpringUtils.getBean(ConsoleController.class);
+ resObj = consoleController.stationLatestData();
+ } else if ("/console/latest/data/crn".equals(url)) {
+ ConsoleController consoleController = SpringUtils.getBean(ConsoleController.class);
+ resObj = consoleController.crnLatestData();
+ } else if ("/console/latest/data/rgv".equals(url)) {
+ ConsoleController consoleController = SpringUtils.getBean(ConsoleController.class);
+ resObj = consoleController.rgvLatestData();
+ } else if ("/crn/table/crn/state".equals(url)) {
+ resObj = SpringUtils.getBean(CrnController.class).crnStateTable();
+ } else if ("/rgv/table/rgv/state".equals(url)) {
+ resObj = SpringUtils.getBean(RgvController.class).rgvStateTable();
+ }
+ } catch (Exception e) {
+ R err = R.error(e.getMessage());
+ JSONObject out = new JSONObject();
+ out.put("url", "error");
+ out.put("data", JSON.toJSONString(err));
+ this.sendMessage(out.toJSONString());
+ return;
+ }
+ if (resObj != null && url != null) {
+ JSONObject out = new JSONObject();
+ out.put("url", url);
+ out.put("data", JSON.toJSONString(resObj));
+ this.sendMessage(out.toJSONString());
+ }
}
/**
--
Gitblit v1.9.1