From f7852c0ef082b97f5fd4a55860faabe066fe5939 Mon Sep 17 00:00:00 2001 From: guoapeng Date: Fri, 14 Feb 2025 17:55:48 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B7=BB=E5=8A=A0websocket=20=E6=8A=A5?= =?UTF-8?q?=E8=AD=A6=E6=8E=A8=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/qyft/gd/model/vo/WebsocketResult.java | 2 +- src/main/java/com/qyft/gd/service/CMDService.java | 3 +-- src/main/java/com/qyft/gd/service/warnService.java | 20 ++++++++++++++++++++ 3 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 src/main/java/com/qyft/gd/service/warnService.java diff --git a/src/main/java/com/qyft/gd/model/vo/WebsocketResult.java b/src/main/java/com/qyft/gd/model/vo/WebsocketResult.java index 6c125c4..62eaa2e 100644 --- a/src/main/java/com/qyft/gd/model/vo/WebsocketResult.java +++ b/src/main/java/com/qyft/gd/model/vo/WebsocketResult.java @@ -11,5 +11,5 @@ public class WebsocketResult { /** * 执行结果 */ - private ExecutionResult data; + private Object data; } \ No newline at end of file diff --git a/src/main/java/com/qyft/gd/service/CMDService.java b/src/main/java/com/qyft/gd/service/CMDService.java index f8c067e..9a8548a 100644 --- a/src/main/java/com/qyft/gd/service/CMDService.java +++ b/src/main/java/com/qyft/gd/service/CMDService.java @@ -143,7 +143,6 @@ public class CMDService { private Boolean injectFluid(CMDForm cmdForm) { List> cmdList = new ArrayList<>(); // TODO 计算出试管的坐标 - // TODO 获取加液位是否有试管(传感器?) // TODO 溶液id 容量 Map params = cmdForm.getParams(); cmdList.add(() -> deviceService.addLiquid((String) params.get("pumpId"), ((Integer)params.get("volume")))); @@ -180,7 +179,7 @@ public class CMDService { return false; } WebsocketResult websocketResult = new WebsocketResult(); - websocketResult.setType("cmd"); + websocketResult.setType("warn"); ExecutionResult executionResult = new ExecutionResult(); executionResult.setCommandId(cmdForm.getCommandId()); executionResult.setCommandName(cmdForm.getCommand()); diff --git a/src/main/java/com/qyft/gd/service/warnService.java b/src/main/java/com/qyft/gd/service/warnService.java new file mode 100644 index 0000000..5cbf5e5 --- /dev/null +++ b/src/main/java/com/qyft/gd/service/warnService.java @@ -0,0 +1,20 @@ +package com.qyft.gd.service; + +import cn.hutool.json.JSONUtil; +import com.qyft.gd.config.WebSocketServer; +import com.qyft.gd.device.model.bo.DeviceAlarm; +import com.qyft.gd.model.vo.WebsocketResult; +import org.springframework.stereotype.Service; + +@Service +public class warnService { + public boolean pushWarnMsg(DeviceAlarm deviceAlarm) { + + WebsocketResult websocketResult = new WebsocketResult(); + websocketResult.setType("warn"); + websocketResult.setData(deviceAlarm); + // 发送消息给客户端 + WebSocketServer.sendMessageToClients(JSONUtil.toJsonStr(websocketResult)); + return true; + } +}