diff --git a/pqs-common/common-mq/src/main/java/com/njcn/mq/message/CloudTopicMessage.java b/pqs-common/common-mq/src/main/java/com/njcn/mq/message/CloudTopicMessage.java new file mode 100644 index 000000000..3da122004 --- /dev/null +++ b/pqs-common/common-mq/src/main/java/com/njcn/mq/message/CloudTopicMessage.java @@ -0,0 +1,64 @@ +package com.njcn.mq.message; + +import com.google.gson.annotations.SerializedName; +import com.njcn.middle.rocket.domain.BaseMessage; +import lombok.Data; + +/** + * @author xy + * @data 2026-07-15 + */ +@Data +public class CloudTopicMessage extends BaseMessage { + /** + * 消息请求的唯一标识 + */ + @SerializedName("guid") + private String guid; + + /** + * 设备Mac + */ + @SerializedName("Dev_id") + private String devId; + + /** + * 前置Id + * 序列化输出 "FrontId",反序列化兼容 "frontId" + */ + @SerializedName("FrontId") + private String frontId; + + /** + * 前置进程号 + * 序列化输出 "Node",反序列化兼容 "node" + */ + @SerializedName("Node") + private Integer node; + + /** + * 详情 + * 序列化输出 "Detail",反序列化兼容 "detail" + */ + @SerializedName("Detail") + private Detail detail; + + @Data + public static class Detail { + + /** + * 类型 + * 序列化输出 "Type",反序列化兼容 "type" + */ + @SerializedName("Type") + private Integer type; + + /** + * 消息内容 + * 序列化输出 "Msg",反序列化兼容 "msg" + */ + @SerializedName("Msg") + private Object msg; + } + +} diff --git a/pqs-common/common-mq/src/main/java/com/njcn/mq/template/CloudTopicMessageTemplate.java b/pqs-common/common-mq/src/main/java/com/njcn/mq/template/CloudTopicMessageTemplate.java new file mode 100644 index 000000000..5cf8288f9 --- /dev/null +++ b/pqs-common/common-mq/src/main/java/com/njcn/mq/template/CloudTopicMessageTemplate.java @@ -0,0 +1,33 @@ +package com.njcn.mq.template; + +import com.google.gson.Gson; +import com.njcn.middle.rocket.domain.BaseMessage; +import com.njcn.middle.rocket.template.RocketMQEnhanceTemplate; +import com.njcn.mq.constant.BusinessResource; +import com.njcn.mq.constant.BusinessTopic; +import com.njcn.mq.message.CloudTopicMessage; +import org.apache.rocketmq.client.producer.SendResult; +import org.apache.rocketmq.spring.core.RocketMQTemplate; +import org.springframework.stereotype.Component; + +/** + * 类的介绍:读取装置版本配置信息 + * + * @author xuyang + * @version 1.0.0 + * @createTime 2026/7/15 + */ +@Component +public class CloudTopicMessageTemplate extends RocketMQEnhanceTemplate { + + public CloudTopicMessageTemplate(RocketMQTemplate template) { + super(template); + } + + public SendResult sendMember(CloudTopicMessage message, String tag) { + BaseMessage baseMessage = new BaseMessage(); + baseMessage.setSource(BusinessResource.WEB_RESOURCE); + baseMessage.setMessageBody(new Gson().toJson(message)); + return send(BusinessTopic.CLOUD_TOPIC,tag,baseMessage); + } +}