TrainWebSocketUtils.java 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. package top.haijunit.train.utils;
  2. import cn.hutool.json.JSONObject;
  3. import cn.hutool.json.JSONUtil;
  4. import lombok.AllArgsConstructor;
  5. import lombok.Data;
  6. import lombok.experimental.UtilityClass;
  7. import lombok.extern.slf4j.Slf4j;
  8. import top.haijunit.common.utils.JsonUtils;
  9. import top.haijunit.train.device.domain.CommandEnum;
  10. import top.haijunit.websocket.utils.WebSocketUtils;
  11. /**
  12. * @author zhanghaijun
  13. * @date 2023/11/26 21:31
  14. * @description [一句话描述该类的功能]
  15. */
  16. @Slf4j
  17. @UtilityClass
  18. public class TrainWebSocketUtils {
  19. public static void sendMessage(CommandEnum command, Object message) {
  20. WebSocketUtils.sendMessage(JsonUtils.toJsonString(new SocketMessage(command, message)));
  21. }
  22. public static void sendMessage(String trainNo, int state) {
  23. JSONObject object = JSONUtil.createObj();
  24. object.set(CommandEnum.TRAIN_OPEN_DOOR.getNameStr(), trainNo);
  25. object.set(CommandEnum.TRAIN_OPEN_DOOR.getStatusStr(), state);
  26. sendMessage(CommandEnum.TRAIN_OPEN_DOOR, object);
  27. }
  28. @Data
  29. @AllArgsConstructor
  30. public static class SocketMessage {
  31. private final CommandEnum cmd;
  32. private final Object data;
  33. }
  34. }