From 12ee2b9838670ad978195b791a593bc4be8b3984 Mon Sep 17 00:00:00 2001 From: guoapeng Date: Tue, 18 Feb 2025 11:08:18 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E6=8C=87=E4=BB=A4=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=92=8Csocket=E6=8E=A8=E9=80=81=E6=96=B9=E6=B3=95=E6=9B=B4?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/qyft/gd/model/vo/WebsocketResult.java | 3 +++ src/main/java/com/qyft/gd/service/CMDService.java | 31 +++++++++------------- .../java/com/qyft/gd/service/WebSocketService.java | 19 +++++++++++++ src/main/java/com/qyft/gd/service/warnService.java | 20 -------------- 4 files changed, 35 insertions(+), 38 deletions(-) create mode 100644 src/main/java/com/qyft/gd/service/WebSocketService.java delete 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 62eaa2e..ed42fc0 100644 --- a/src/main/java/com/qyft/gd/model/vo/WebsocketResult.java +++ b/src/main/java/com/qyft/gd/model/vo/WebsocketResult.java @@ -1,5 +1,6 @@ package com.qyft.gd.model.vo; +import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; @Data @@ -7,9 +8,11 @@ public class WebsocketResult { /** * 推送类型(指令 cmd,报警 warn ,状态 status) */ + @Schema(description = "推送类型(指令 cmd,报警 warn ,状态 status)") private String type; /** * 执行结果 */ + @Schema(description = "推送数据") 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 9766b05..1c2b3e2 100644 --- a/src/main/java/com/qyft/gd/service/CMDService.java +++ b/src/main/java/com/qyft/gd/service/CMDService.java @@ -22,7 +22,6 @@ public class CMDService { DeviceService deviceService; DeviceStateService deviceStateService; Map> commandMap; - CMDForm form = new CMDForm(); @Autowired public CMDService(DeviceService deviceService) { @@ -164,28 +163,24 @@ public class CMDService { } public boolean executeCommand(CMDForm cmdForm) { - form = cmdForm; String commandName = cmdForm.getCommand(); Function command = commandMap.get(commandName); if (command == null) { return false; } - WebsocketResult websocketResult = new WebsocketResult(); - websocketResult.setType("warn"); - ExecutionResult executionResult = new ExecutionResult(); - executionResult.setCommandId(cmdForm.getCommandId()); - executionResult.setCommandName(cmdForm.getCommand()); - boolean result =command.apply(cmdForm); - if(result) { - executionResult.setStatus(CMDResultCode.SUCCESS.getCode()); - executionResult.setMessage(CMDResultCode.SUCCESS.getMsg()); - }else { - executionResult.setStatus(CMDResultCode.FAILURE.getCode()); - executionResult.setMessage(CMDResultCode.FAILURE.getMsg()); - } - websocketResult.setData(executionResult); - // 发送消息给客户端 - WebSocketServer.sendMessageToClients(JSONUtil.toJsonStr(websocketResult)); + command.apply(cmdForm); return true; + +// ExecutionResult executionResult = new ExecutionResult(); +// executionResult.setCommandId(cmdForm.getCommandId()); +// executionResult.setCommandName(cmdForm.getCommand()); +// boolean result =command.apply(cmdForm); +// if(result) { +// executionResult.setStatus(CMDResultCode.SUCCESS.getCode()); +// executionResult.setMessage(CMDResultCode.SUCCESS.getMsg()); +// }else { +// executionResult.setStatus(CMDResultCode.FAILURE.getCode()); +// executionResult.setMessage(CMDResultCode.FAILURE.getMsg()); +// } } } diff --git a/src/main/java/com/qyft/gd/service/WebSocketService.java b/src/main/java/com/qyft/gd/service/WebSocketService.java new file mode 100644 index 0000000..be2b9f7 --- /dev/null +++ b/src/main/java/com/qyft/gd/service/WebSocketService.java @@ -0,0 +1,19 @@ +package com.qyft.gd.service; + +import cn.hutool.json.JSONUtil; +import com.qyft.gd.config.WebSocketServer; +import com.qyft.gd.model.vo.WebsocketResult; +import org.springframework.stereotype.Service; + +@Service +public class WebSocketService { + public boolean pushMsg(String type, Object result) { + + WebsocketResult websocketResult = new WebsocketResult(); + websocketResult.setType(type); + websocketResult.setData(result); + // 发送消息给客户端 + WebSocketServer.sendMessageToClients(JSONUtil.toJsonStr(websocketResult)); + return true; + } +} diff --git a/src/main/java/com/qyft/gd/service/warnService.java b/src/main/java/com/qyft/gd/service/warnService.java deleted file mode 100644 index 5cbf5e5..0000000 --- a/src/main/java/com/qyft/gd/service/warnService.java +++ /dev/null @@ -1,20 +0,0 @@ -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; - } -}