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.time.Duration;
|
import java.time.LocalDateTime;
|
import java.util.Calendar;
|
import java.util.Date;
|
import org.springframework.format.annotation.DateTimeFormat;
|
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")
|
public class CommandInfo 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;
|
|
/**
|
* 指令类型{1:创建,2:执行,3:完成}
|
*/
|
@ApiModelProperty(value= "指令状态")
|
@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("end_time")
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
private Date endTime;
|
|
/**
|
* 指令类型
|
*/
|
@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")
|
@TableField("command")
|
private String command;
|
|
public CommandInfo() {}
|
|
public CommandInfo(Integer wrkNo,Integer commandStatus,Date startTime,Date endTime,Integer commandType,String device,String deviceLog,String commandDesc) {
|
this.wrkNo = wrkNo;
|
this.commandStatus = commandStatus;
|
this.startTime = startTime;
|
this.endTime = endTime;
|
this.commandType = commandType;
|
this.device = device;
|
this.deviceLog = deviceLog;
|
this.commandDesc = commandDesc;
|
}
|
|
// CommandInfo commandInfo = new CommandInfo(
|
// null, // 任务号
|
// null, // 起点位置
|
// null, // 终点位置
|
// null, // 指令状态
|
// null, // 开始时间
|
// null, // 结束时间
|
// null, // 指令类型
|
// null, // 设备
|
// null, // 设备执行信息
|
// null // 命令描述
|
// );
|
|
public String getStartTime$(){
|
if (Cools.isEmpty(this.startTime)){
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.startTime);
|
}
|
|
public String getEndTime$(){
|
if (Cools.isEmpty(this.endTime)){
|
return "";
|
}
|
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.endTime);
|
}
|
|
/**
|
* 获取持续时间
|
*/
|
public String getDurationTime() {
|
if (Cools.isEmpty(this.startTime)) {
|
return "";
|
}
|
|
Date endDate = new Date();
|
if (!Cools.isEmpty(this.endTime)) {
|
endDate = this.endTime;
|
}
|
|
//用来获取两个时间相差的毫秒数
|
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 getCommandStatus$() {
|
if (Cools.isEmpty(this.commandStatus)) {
|
return "";
|
}
|
|
switch (this.commandStatus) {
|
case 1:
|
return "创建";
|
case 2:
|
return "执行";
|
case 3:
|
return "完成";
|
default:
|
return "";
|
}
|
}
|
|
|
}
|