| ard-work/src/main/java/com/ard/work/component/websocket/utils/WebSocketUtil.java | ●●●●● patch | view | raw | blame | history | |
| ard-work/src/main/java/com/ard/work/domain/message/BaseMessage.java | ●●●●● patch | view | raw | blame | history | |
| ard-work/src/main/java/com/ard/work/domain/message/ServerReplyMessage.java | ●●●●● patch | view | raw | blame | history | |
| ard-work/src/main/java/com/ard/work/service/impl/TyServiceImpl.java | ●●●●● patch | view | raw | blame | history |
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); } } 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> { ard-work/src/main/java/com/ard/work/domain/message/ServerReplyMessage.java
New file @@ -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; } 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); }