package com.zy.asrs.entity; import com.core.common.Cools;import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.enums.IdType; import com.baomidou.mybatisplus.annotations.TableField; import java.text.SimpleDateFormat; import java.util.Date; import com.zy.core.enums.CommandType; import org.springframework.format.annotation.DateTimeFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.text.SimpleDateFormat; import java.util.Date; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import com.baomidou.mybatisplus.annotations.TableName; import java.io.Serializable; @Data @TableName("wcs_command_info_log") public class CommandInfoLog implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value= "") @TableId(value = "id", type = IdType.AUTO) private Integer id; /** * 工作号 */ @ApiModelProperty(value= "工作号") @TableField("wrk_no") private Integer wrkNo; /** * 起点位置 */ @ApiModelProperty(value= "起点位置") @TableField("start_pos") private String startPos; /** * 终点位置 */ @ApiModelProperty(value= "终点位置") @TableField("end_pos") private String endPos; /** * 指令状态 1: 创建 2: 执行 3: 完成 */ @ApiModelProperty(value= "指令状态 1: 创建 2: 执行 3: 完成 ") @TableField("command_status") private Integer commandStatus; /** * 创建时间 */ @ApiModelProperty(value= "创建时间") @TableField("start_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date startTime; /** * 指令类型 */ @ApiModelProperty(value= "指令类型") @TableField("command_type") private Integer commandType; /** * 设备 */ @ApiModelProperty(value= "设备") private String device; /** * 设备执行信息 */ @ApiModelProperty(value= "设备执行信息") @TableField("device_log") private String deviceLog; /** * 命令描述 */ @ApiModelProperty(value= "命令描述") @TableField("command_desc") private String commandDesc; /** * 命令JSON */ @ApiModelProperty(value= "命令JSON") private String command; /** * 任务号 */ @ApiModelProperty(value= "任务号") @TableField("task_no") private String taskNo; /** * 执行时间 */ @ApiModelProperty(value= "执行时间") @TableField("execute_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date executeTime; /** * 完成时间 */ @ApiModelProperty(value= "完成时间") @TableField("complete_time") @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date completeTime; public CommandInfoLog() {} public CommandInfoLog(Integer wrkNo,String startPos,String endPos,Integer commandStatus,Date startTime,Integer commandType,String device,String deviceLog,String commandDesc,String command,String taskNo,Date executeTime,Date completeTime) { this.wrkNo = wrkNo; this.startPos = startPos; this.endPos = endPos; this.commandStatus = commandStatus; this.startTime = startTime; this.commandType = commandType; this.device = device; this.deviceLog = deviceLog; this.commandDesc = commandDesc; this.command = command; this.taskNo = taskNo; this.executeTime = executeTime; this.completeTime = completeTime; } // CommandInfoLog commandInfoLog = new CommandInfoLog( // null, // 工作号 // null, // 起点位置 // null, // 终点位置 // null, // 指令状态 // null, // 创建时间 // null, // 指令类型 // null, // 设备 // null, // 设备执行信息 // null, // 命令描述 // null, // 命令JSON // null, // 任务号 // null, // 执行时间 // null // 完成时间 // ); public String getCommandStatus$(){ if (null == this.commandStatus){ return null; } switch (this.commandStatus){ case 1: return "创建"; case 2: return "执行"; case 3: return "完成"; default: return String.valueOf(this.commandStatus); } } public String getStartTime$(){ if (Cools.isEmpty(this.startTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.startTime); } public String getExecuteTime$(){ if (Cools.isEmpty(this.executeTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.executeTime); } public String getCompleteTime$(){ if (Cools.isEmpty(this.completeTime)){ return ""; } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.completeTime); } /** * 获取持续时间 */ public String getDurationTime() { if (Cools.isEmpty(this.startTime)) { return ""; } Date endDate = new Date(); if (!Cools.isEmpty(this.completeTime)) { endDate = this.completeTime; } //用来获取两个时间相差的毫秒数 long l = this.startTime.getTime() - endDate.getTime(); //分别计算相差的天、小时、分、秒 long day = l / (24 * 60 * 60 * 1000); long hour = (l / (60 * 60 * 1000) - day * 24); long min = ((l / (60 * 1000)) - day * 24 * 60 - hour * 60); long s = (l / 1000 - day * 24 * 60 * 60 - hour * 60 * 60 - min * 60); return Math.abs(day) + "天" + Math.abs(hour) + "小时" + Math.abs(min) + "分" + Math.abs(s) + "秒"; } public String getCommandType$() { if (Cools.isEmpty(this.commandType)) { return ""; } return CommandType.get(this.commandType).desc; } }