package com.zy.bms.model; import com.alibaba.fastjson.JSON; import com.zy.bms.common.Constant; import lombok.Data; import lombok.NoArgsConstructor; import java.util.HashMap; import java.util.Map; /** * MQTT 消息模板类 * * @author yang xiao kun * create on 2021/1/21 */ @Data @NoArgsConstructor public class MqttMsgDto { private String m; private String t; private String r; /** * 数据项 */ private Map data; /** * 通用构造器 * * @param m MQTT协议设置代码 * @param deviceId 设备ID */ public MqttMsgDto(String m, String deviceId) { this.m = m; this.t = Constant.TOPIC_DEVICE_CLIENT + deviceId; this.r = Constant.TOPIC_DEVICE_SERVER + deviceId; this.data = new HashMap<>(); } /** * 往data中添加数据 支持链式 * * @param key 键 * @param value 值 */ public MqttMsgDto set(String key, Object value) { data.put(key, value); return this; } /** * 获取json 对象 */ public String toJson() { return JSON.toJSONString(this); } }