package com.friday.operation.api.distributor.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class JobExecuteLogDto implements Serializable{

	@NotNull(message = "invokeId不能为空")
	private Integer invokeId;
	@NotBlank(message = "taskId不能为空")
	private String taskId;
	@NotBlank(message = "taskType不能为空")
	private String taskType;
	@NotBlank(message = "tenant不能为空")
	private String tenant;
	@NotBlank(message = "empNo不能为空")
	private String empNo;
	@NotBlank(message = "businessType不能为空")
	private String businessType;
	@NotBlank(message = "missionName不能为空")
	private String missionName;
	@NotBlank(message = "processName不能为空")
	private String processName;
	@NotBlank(message = "processVersion不能为空")
	private String processVersion;
	@NotBlank(message = "module不能为空")
	private String module;
	@NotBlank(message = "step不能为空")
	private String step;
	@NotBlank(message = "logContent不能为空")
	private String logContent;
	@NotBlank(message = "logLevel不能为空")
	private String logLevel;
	@NotNull(message = "logTime不能为空")
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date logTime;
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date processStartTime;
	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
	private Date processEndTime;
	private String imgPath;
	private String videoPath;
	@NotBlank(message = "robotIp不能为空")
	private String robotIp;
	@NotBlank(message = "robotUser不能为空")
	private String robotUser;
	@NotBlank(message = "operator不能为空")
	private String operator;
	@NotBlank(message = "startType不能为空")
	private String startType;
	@NotBlank(message = "executeMethod不能为空")
	private String executeMethod;
	@NotBlank(message = "supplier不能为空")
	private String supplier;
}
