From 1edc7e1a14278146ef00e4871c71cfd74998802f Mon Sep 17 00:00:00 2001
From: liusuyi <1951119284@qq.com>
Date: Thu, 23 Oct 2025 15:26:32 +0800
Subject: [PATCH] 将命令回复封装后发送
---
ard-work/src/main/java/com/ard/work/component/websocket/utils/WebSocketUtil.java | 14 ++++++++++++++
ard-work/src/main/java/com/ard/work/domain/message/BaseMessage.java | 2 ++
ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java | 8 ++++++--
ard-work/src/main/java/com/ard/work/domain/message/ServerReplyMessage.java | 25 +++++++++++++++++++++++++
4 files changed, 47 insertions(+), 2 deletions(-)
diff --git a/ard-work/src/main/java/com/ard/work/component/websocket/utils/WebSocketUtil.java b/ard-work/src/main/java/com/ard/work/component/websocket/utils/WebSocketUtil.java
index 0bf9553..dbf54b1 100644
--- a/ard-work/src/main/java/com/ard/work/component/websocket/utils/WebSocketUtil.java
+++ b/ard-work/src/main/java/com/ard/work/component/websocket/utils/WebSocketUtil.java
@@ -3,6 +3,7 @@
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONObject;
import com.ard.work.component.websocket.WebSocketSessionManager;
+import com.ard.work.domain.message.BaseMessage;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.socket.TextMessage;
import org.springframework.web.socket.WebSocketSession;
@@ -125,4 +126,17 @@
WebSocketSessionManager.broadcast(JSON.toJSONString(message));
}
+ // 发送消息到所有 WebSocket 客户端
+ public static <T> void sendToAll(BaseMessage<T> baseMessage) {
+ WebSocketUtil.sendMessageAll(baseMessage); // 你已有的 WebSocket 发送逻辑
+ }
+
+ // 根据消息类型和内容创建消息并发送
+ public static <T> void sendMessage(String type, T payload) {
+ BaseMessage<T> baseMessage = BaseMessage.<T>builder()
+ .type(type)
+ .payload(payload)
+ .build();
+ sendToAll(baseMessage);
+ }
}
\ No newline at end of file
diff --git a/ard-work/src/main/java/com/ard/work/domain/message/BaseMessage.java b/ard-work/src/main/java/com/ard/work/domain/message/BaseMessage.java
index 4867100..1f42176 100644
--- a/ard-work/src/main/java/com/ard/work/domain/message/BaseMessage.java
+++ b/ard-work/src/main/java/com/ard/work/domain/message/BaseMessage.java
@@ -1,6 +1,7 @@
package com.ard.work.domain.message;
import lombok.AllArgsConstructor;
+import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
@@ -12,6 +13,7 @@
* @date 2024年11月04日14:40
**/
@Data
+@Builder
@AllArgsConstructor
@NoArgsConstructor
public class BaseMessage<T> {
diff --git a/ard-work/src/main/java/com/ard/work/domain/message/ServerReplyMessage.java b/ard-work/src/main/java/com/ard/work/domain/message/ServerReplyMessage.java
new file mode 100644
index 0000000..f8be9f6
--- /dev/null
+++ b/ard-work/src/main/java/com/ard/work/domain/message/ServerReplyMessage.java
@@ -0,0 +1,25 @@
+package com.ard.work.domain.message;
+
+import com.ard.work.domain.dto.state.UavState;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+/**
+ * Description: 服务回复消息
+ * Author: liusuyi
+ * Date: 2025年03月10日11:49
+ **/
+@Data
+@Builder
+@AllArgsConstructor
+@NoArgsConstructor
+public class ServerReplyMessage {
+ /**
+ * 回复信息
+ */
+ private String message;
+
+
+}
diff --git a/ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java b/ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java
index 74a0c0c..9dd271b 100644
--- a/ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java
+++ b/ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java
@@ -46,6 +46,8 @@
import com.ard.work.domain.dto.wayline.*;
import com.ard.work.domain.entity.ArdDroneInfo;
import com.ard.work.domain.entity.ArdServerInfo;
+import com.ard.work.domain.message.BaseMessage;
+import com.ard.work.domain.message.ServerReplyMessage;
import com.ard.work.domain.message.UavControlType;
import com.ard.work.domain.receiver.*;
import com.ard.work.service.IArdDroneInfoService;
@@ -903,7 +905,8 @@
//公共日志打印
private void logPrint(String message, Object obj) {
String text = String.format("收到%s回复%s", message, obj);
- WebSocketUtil.sendMessageAll(text);
+ ServerReplyMessage serverReplyMessage = ServerReplyMessage.builder().message(text).build();
+ WebSocketUtil.sendMessage("reply", serverReplyMessage);
log.info(text);
}
@@ -916,7 +919,8 @@
errorCode,
ErrorCodeEnum.getDescByCode(errorCode)
);
- WebSocketUtil.sendMessageAll(text);
+ ServerReplyMessage serverReplyMessage = ServerReplyMessage.builder().message(text).build();
+ WebSocketUtil.sendMessage("reply", serverReplyMessage);
log.info(text);
}
--
Gitblit v1.9.3