OperationMessageModel.java 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. package com.zswl.dataservice.model.artemis;
  2. import com.zswl.dataservice.domain.mqtt.DeviceInfo;
  3. import com.zswl.dataservice.domain.mqtt.GateWayInfo;
  4. import com.zswl.dataservice.model.baseParam.SuperModel;
  5. import com.zswl.dataservice.model.mqtt.DeviceInfoModel;
  6. import com.zswl.dataservice.model.mqtt.GateWayInfoModel;
  7. import com.zswl.dataservice.type.OperationType;
  8. import io.swagger.v3.oas.annotations.media.Schema;
  9. import lombok.Data;
  10. import org.springframework.data.mongodb.core.index.Indexed;
  11. import java.util.Date;
  12. /**
  13. * @author TRX
  14. * @date 2024/5/21
  15. */
  16. @Data
  17. public class OperationMessageModel extends SuperModel {
  18. @Schema(description = "mqtt服务器消息ID")
  19. private String messageId;
  20. @Schema(description = "topic")
  21. private String topic;
  22. @Schema(description = "终端ID")
  23. private String clientId;
  24. @Schema(description = "业务生成的ID")
  25. private String dataId;
  26. @Schema(description = "消息内容")
  27. private Object data;
  28. @Schema(description = "ttl时间(毫秒数)")
  29. private Long ttlTime;
  30. @Schema(description = "发送时间")
  31. private Long sendTime;
  32. @Schema(description = "接收的消息是否超时")
  33. private Boolean isTimeOut;
  34. @Schema(description = "处理标记,判断用那个业务方法处理")
  35. private String event;
  36. //------------------------关联的消息
  37. @Schema(description = "消息的类型")
  38. private String messageClass;
  39. @Schema(description = "关于的设备信息")
  40. private DeviceInfoModel deviceInfo;
  41. @Schema(description = "设备ID")
  42. private String deviceId;
  43. @Schema(description = "关于的网关信息")
  44. private GateWayInfoModel gateWayInfo;
  45. @Schema(description = "网关ID")
  46. private String gateWayId;
  47. @Schema(description = "消息创建时间")
  48. private String time;
  49. @Schema(description = "mqtt消息类型: 发送 接收")
  50. OperationType operationType;
  51. private String operationTypeStr;
  52. public String getOperationTypeStr() {
  53. if (operationType != null) {
  54. return operationType.getRemark();
  55. }
  56. return "";
  57. }
  58. // --------------------- 消息处理结果信息 start -------------------
  59. @Schema(description = "是否收到信息")
  60. private Boolean isReceive;
  61. @Schema(description = "接收到的时间")
  62. private Long receiveTime;
  63. @Schema(description = "接收到的时间可阅读的")
  64. private String receiveTimeStr;
  65. //-------------------业务处理结果 start----------------
  66. @Schema(description = "是否处理成功")
  67. private Boolean isHandleSuccess;
  68. @Schema(description = "业务结果数据")
  69. private Object resultData;
  70. @Schema(description = "处理结果")
  71. private String handleMsg;
  72. @Schema(description = "业务处理的bean")
  73. private String beanName;
  74. @Schema(description = "业务处理的方法")
  75. private String methodName;
  76. @Schema(description = "处理时间")
  77. private Long handlerTime;
  78. //--------------------返回数据 start ------------------
  79. @Schema(description = "是否响应成功")
  80. private Boolean isResult = Boolean.FALSE;
  81. @Schema(description = "返回的topic")
  82. private String reTopic;
  83. @Schema(description = "返回-处理时间")
  84. private Long reTime;
  85. @Schema(description = "返回-处理时间可阅读")
  86. private String reTimeStr;
  87. @Schema(description = "响应结果")
  88. private String reMsg;
  89. @Schema(description = "是否响应成功")
  90. private Boolean reIsSuccess;
  91. }