package cc.mrbird.febs.job.entity;
|
|
import cc.mrbird.febs.common.annotation.IsCron;
|
import cc.mrbird.febs.common.converter.TimeConverter;
|
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.wuwenze.poi.annotation.Excel;
|
import com.wuwenze.poi.annotation.ExcelField;
|
import lombok.Data;
|
|
import javax.validation.constraints.NotBlank;
|
import javax.validation.constraints.Size;
|
import java.io.Serializable;
|
import java.util.Date;
|
|
/**
|
* @author MrBird
|
*/
|
@Data
|
@TableName("t_job")
|
@Excel("定时任务信息表")
|
public class Job implements Serializable {
|
|
private static final long serialVersionUID = 400066840871805700L;
|
|
/**
|
* 任务调度参数 key
|
*/
|
public static final String JOB_PARAM_KEY = "JOB_PARAM_KEY";
|
|
public enum ScheduleStatus {
|
/**
|
* 正常
|
*/
|
NORMAL("0"),
|
/**
|
* 暂停
|
*/
|
PAUSE("1");
|
|
private String value;
|
|
ScheduleStatus(String value) {
|
this.value = value;
|
}
|
|
public String getValue() {
|
return value;
|
}
|
}
|
|
@TableId(value = "JOB_ID", type = IdType.AUTO)
|
private Long jobId;
|
|
@TableField("bean_name")
|
@NotBlank(message = "{required}")
|
@Size(max = 50, message = "{noMoreThan}")
|
@ExcelField(value = "Bean名称")
|
private String beanName;
|
|
@TableField("method_name")
|
@NotBlank(message = "{required}")
|
@Size(max = 50, message = "{noMoreThan}")
|
@ExcelField(value = "方法名称")
|
private String methodName;
|
|
@TableField("params")
|
@Size(max = 50, message = "{noMoreThan}")
|
@ExcelField(value = "方法参数")
|
private String params;
|
|
@TableField("cron_expression")
|
@NotBlank(message = "{required}")
|
@IsCron(message = "{invalid}")
|
@ExcelField(value = "Cron表达式")
|
private String cronExpression;
|
|
@TableField("status")
|
@ExcelField(value = "状态", writeConverterExp = "0=正常,1=暂停")
|
private String status;
|
|
@TableField("remark")
|
@Size(max = 100, message = "{noMoreThan}")
|
@ExcelField(value = "备注")
|
private String remark;
|
|
@TableField("create_time")
|
@ExcelField(value = "创建时间", writeConverter = TimeConverter.class)
|
private Date createTime;
|
|
private transient String createTimeFrom;
|
private transient String createTimeTo;
|
|
}
|