package com.mes.device.entity; import com.baomidou.mybatisplus.annotation.IdType; 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 io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.util.Date; /** * 设备状态实体类 * 对应数据库表:device_status */ @Data @TableName("device_status") @ApiModel(value = "设备状态信息") public class DeviceStatus { @ApiModelProperty(value = "记录ID") @TableId(value = "id", type = IdType.AUTO) private Long id; @ApiModelProperty(value = "设备ID(device_config.device_id)", example = "DEVICE_001") @TableField("device_id") private String deviceId; @ApiModelProperty(value = "关联任务ID", example = "TASK_001") @TableField("task_id") private String taskId; @ApiModelProperty(value = "设备状态", example = "ONLINE/OFFLINE/BUSY/ERROR/MAINTENANCE") @TableField("status") private String status; @ApiModelProperty(value = "最后心跳时间") @TableField("last_heartbeat") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date lastHeartbeat; @ApiModelProperty(value = "CPU使用率(%)") @TableField("cpu_usage") private BigDecimal cpuUsage; @ApiModelProperty(value = "内存使用率(%)") @TableField("memory_usage") private BigDecimal memoryUsage; @ApiModelProperty(value = "PLC连接状态", example = "CONNECTED/DISCONNECTED/ERROR") @TableField("plc_connection_status") private String plcConnectionStatus; @ApiModelProperty(value = "当前操作") @TableField("current_operation") private String currentOperation; @ApiModelProperty(value = "操作进度(0-100)") @TableField("operation_progress") private BigDecimal operationProgress; @ApiModelProperty(value = "告警信息") @TableField("alert_message") private String alertMessage; @ApiModelProperty(value = "记录时间") @TableField("created_time") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private Date createdTime; // 设备状态常量 public static final class Status { public static final String ONLINE = "ONLINE"; // 在线 public static final String OFFLINE = "OFFLINE"; // 离线 public static final String BUSY = "BUSY"; // 忙碌 public static final String ERROR = "ERROR"; // 错误 public static final String MAINTENANCE = "MAINTENANCE"; // 维护中 } // PLC连接状态常量 public static final class PlcConnectionStatus { public static final String CONNECTED = "CONNECTED"; // 已连接 public static final String DISCONNECTED = "DISCONNECTED"; // 未连接 public static final String ERROR = "ERROR"; // 连接错误 } }