| | |
| | | import jakarta.validation.constraints.Size; |
| | | import com.ruoyi.common.core.domain.BaseEntity; |
| | | |
| | | /** 设备适配器实例对象 t_device_adapter。 */ |
| | | /** 设备适配器实例对象 t_device_adapter;实例按「机器 + 上位机版本」划分,不能按厂商划分。 */ |
| | | public class TDeviceAdapter extends BaseEntity |
| | | { |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** 适配器实例主键。 */ |
| | | private Long adapterId; |
| | | |
| | | /** 适配器实例编码,与厂商通道字段共同构成通道身份。 */ |
| | | @NotBlank(message = "适配器编码不能为空") |
| | | @Size(max = 64, message = "适配器编码长度不能超过64个字符") |
| | | private String adapterCode; |
| | | |
| | | /** 适配器实例名称,用于区分不同机器上的同名设备,仅供展示。 */ |
| | | @NotBlank(message = "适配器名称不能为空") |
| | | @Size(max = 100, message = "适配器名称长度不能超过100个字符") |
| | | private String adapterName; |
| | | |
| | | /** 适配器类型,决定使用哪一套来源实现:BTS 协议客户端、NEWARE_MYSQL 新威读库、PUSH_INGEST 读落地表。 */ |
| | | @NotBlank(message = "适配器类型不能为空") |
| | | private String adapterType; |
| | | |
| | | /** 来源主机地址。 */ |
| | | @NotBlank(message = "主机不能为空") |
| | | @Size(max = 255, message = "主机长度不能超过255个字符") |
| | | private String host; |
| | | |
| | | /** 来源端口。 */ |
| | | @NotNull(message = "端口不能为空") |
| | | @Min(value = 1, message = "端口必须在1到65535之间") |
| | | @Max(value = 65535, message = "端口必须在1到65535之间") |
| | | private Integer port; |
| | | |
| | | /** 轮询周期(毫秒);设备来源约 60 秒才产生一行数据,取数不必更快。 */ |
| | | @NotNull(message = "轮询周期不能为空") |
| | | @Min(value = 1000, message = "轮询周期不能小于1000毫秒") |
| | | private Integer pollIntervalMs; |
| | | |
| | | /** 适配器时区标识,用于把设备时间解释为 UTC。 */ |
| | | @NotBlank(message = "时区不能为空") |
| | | @Size(max = 64, message = "时区长度不能超过64个字符") |
| | | private String timezoneId; |
| | | |
| | | /** 只读能力标记,只允许为真:第一版只观测设备,不下发控制命令。 */ |
| | | @NotNull(message = "只读能力不能为空") |
| | | @AssertTrue(message = "当前里程碑只允许只读设备适配器") |
| | | private Boolean readOnly; |
| | | |
| | | /** 适配器声明的能力标记,运行时控制能力默认为不支持。 */ |
| | | private String capabilities; |
| | | |
| | | /** 来源形态配置(JSON),承载各存储形态互不相交的非敏感字段;连接口令不入库。 */ |
| | | private String sourceConfig; |
| | | |
| | | /** 启用状态:0启用,1停用。 */ |
| | | private String status; |
| | | /** 适配器连接状态,仅允许 ONLINE/OFFLINE。 */ |
| | | private String connectionStatus; |
| | | /** 最近一次连接失败的错误码,供现场排查使用。 */ |
| | | private String lastErrorCode; |
| | | /** 最近一次连接失败的错误说明,供现场排查使用。 */ |
| | | private String lastErrorMessage; |
| | | /** 最近一次尝试连接的时间,以 UTC 保存。 */ |
| | | private Instant lastAttemptAtUtc; |
| | | /** 最近一次成功观测到设备事实的时间,以 UTC 保存。 */ |
| | | private Instant lastObservedAtUtc; |
| | | /** 逻辑删除标识:0存在,其他值表示已删除。 */ |
| | | private String delFlag; |
| | | |
| | | public Long getAdapterId() { return adapterId; } |
| | |
| | | public void setReadOnly(Boolean readOnly) { this.readOnly = readOnly; } |
| | | public String getCapabilities() { return capabilities; } |
| | | public void setCapabilities(String capabilities) { this.capabilities = capabilities; } |
| | | public String getSourceConfig() { return sourceConfig; } |
| | | public void setSourceConfig(String sourceConfig) { this.sourceConfig = sourceConfig; } |
| | | public String getStatus() { return status; } |
| | | public void setStatus(String status) { this.status = status; } |
| | | public String getConnectionStatus() { return connectionStatus; } |