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 | 92 +++++++++++++++++++++++++++-------------------
1 files changed, 54 insertions(+), 38 deletions(-)
diff --git a/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java b/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java
index d1e6de7..ba09508 100644
--- a/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java
+++ b/src/main/java/com/zy/asrs/ws/ConsoleWebSocket.java
@@ -1,13 +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 com.zy.asrs.controller.ForkLiftController;
-import com.zy.asrs.controller.LiftController;
-import com.zy.asrs.controller.ShuttleController;
-import com.zy.common.model.WebSocketMessage;
import lombok.Data;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
@@ -71,41 +72,56 @@
*/
@OnMessage
public void onMessage(String message, Session session) throws IOException {
- ShuttleController shuttleController = SpringUtils.getBean(ShuttleController.class);
- ForkLiftController forkLiftController = SpringUtils.getBean(ForkLiftController.class);
- LiftController liftController = SpringUtils.getBean(LiftController.class);
- ConsoleController consoleController = SpringUtils.getBean(ConsoleController.class);
- WebSocketMessage socketMessage = JSON.parseObject(message, WebSocketMessage.class);
- if (socketMessage.getUrl().equals("/shuttle/table/shuttle/state")) {
- R result = shuttleController.shuttleStateTable();
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
- } else if (socketMessage.getUrl().equals("/forkLift/table/lift/state")) {
- R result = forkLiftController.liftStateTable();
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
- } else if (socketMessage.getUrl().equals("/lift/table/lift/state")) {
- R result = liftController.liftStateTable();
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
- } else if (socketMessage.getUrl().equals("/console/map/auth")) {
- R result = consoleController.getMapFromRedis(Integer.parseInt(socketMessage.getData()));
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
- } else if (socketMessage.getUrl().equals("/console/locMap/auth")) {
- R result = consoleController.getLocMap(Integer.parseInt(socketMessage.getData()));
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
- } else if (socketMessage.getUrl().equals("/console/getMoveAdvancePath/auth")) {
- R result = consoleController.getMoveAdvancePath(Integer.parseInt(socketMessage.getData()));
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
- } else if (socketMessage.getUrl().equals("/console/getLockPath/auth")) {
- R result = consoleController.getLockPath(Integer.parseInt(socketMessage.getData()));
- socketMessage.setData(JSON.toJSONString(result));
- this.sendMessage(JSON.toJSONString(socketMessage));
+ 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;
}
-// log.info("鏀跺埌鏉ヨ嚜杩炴帴锛�" + sessionId + "鐨勪俊鎭�:" + message);
+ 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