Broker/gather-broker/src/main/java/com/idtgz/dao/entity/ConnectionEntity.java
2022-09-02 15:00:04 +08:00

106 lines
3.0 KiB
Java

package com.idtgz.dao.entity;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.idtgz.config.constant.ConnectionConstant;
import com.idtgz.config.constant.ProtocolConstant;
import com.idtgz.config.model.MqttConnectionConfig;
import com.idtgz.context.ConfigContext;
import com.idtgz.util.CommonUtil;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.time.LocalDateTime;
import java.util.regex.Pattern;
/**
* @Description:
* @author: GS-HQY
* @date: 2022.05.25
*/
@Data
@NoArgsConstructor
@TableName("connection")
public class ConnectionEntity {
@TableId("id")
private Long id;
@TableField(exist = false)
private String connectionId;
@TableField("connection_sign")
private String connectionSign;
/**
* 连接类型 1: 级联客户端连接 2:Broker连接
*/
@TableField("connection_type")
private int connectionType;
/**
* 连接协议 5:opcda 6:opcua 7:db 8:iec104 9:Mqtt
*/
@TableField("connection_protocol")
private int connectionProtocol;
@TableField("connection_name")
private String connectionName;
@TableField("connection_json")
private String connectionJson;
@TableField("connection_status")
private Integer connectionStatus;
@TableField("client_id")
private String clientId;
@TableField("device_id")
private Long deviceId;
@TableField("upload_type")
private Integer uploadType;
@TableField("upload_cycle")
private Integer uploadCycle;
@TableField("store_strategy")
private Integer storeStrategy;
@TableField("is_uploaded")
private int isUploaded;
@TableField("created_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime createdTime;
@TableField("updated_time")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime updatedTime;
public ConnectionEntity(MqttConnectionConfig connectionConfig) {
this.connectionSign = connectionConfig.getConnectionSign();
this.connectionType = ConnectionConstant.BrokerConnection;
this.connectionProtocol = ProtocolConstant.MQTT;
this.connectionName = connectionConfig.getConnetionName();
this.connectionJson = JSON.toJSONString(connectionConfig);
this.connectionStatus = 1;
this.deviceId = CommonUtil.getLongId(this.connectionSign);
if (this.uploadType == null || this.uploadType == null) {
this.uploadType = 1;
this.uploadCycle = 1;
} else {
this.uploadType = connectionConfig.getUploadType();
this.uploadCycle = connectionConfig.getCycle();
}
this.clientId = connectionConfig.getClientId();
this.storeStrategy = connectionConfig.getStoreStrategy();
}
}