package com.railway.business.safetool.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.railway.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.Date;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.hibernate.validator.constraints.Length;

/**
 * 送检记录表
 *
 * @author lijie 2021-12-25
 */
@Data
@ApiModel("送检记录表")
@EqualsAndHashCode(callSuper = true)
public class SecExperiment extends BaseEntity {

  @ApiModelProperty(value = "主键", hidden = true)
  private Long id;

  @ApiModelProperty(value = "车间")
  private Long deptId;

  @ApiModelProperty(value = "车间名称")
  private String deptName;

  @ApiModelProperty(value = "实验室id 部门表类型为实验室")
  private Long labId;

  @ApiModelProperty(value = "实验室Name 部门表类型为实验室")
  private String labName;

  @ApiModelProperty(value = "送检计划id")
  private Long scheduledId;

  @ApiModelProperty(value = "截止时间")
  @JsonFormat(pattern = "yyyy-MM-dd")
  private Date endTime;

  @ApiModelProperty(value = "送检日期")
  @JsonFormat(pattern = "yyyy-MM-dd")
  private Date scheduledTime;

  @ApiModelProperty(value = "实验日期")
  @JsonFormat(pattern = "yyyy-MM-dd")
  private Date expDate;

  @ApiModelProperty(value = "实验人")
  @Length(min = 1, max = 64, message = "【实验人】长度必须介于 {min} 和 {max} 之间")
  private String expBy;

  @ApiModelProperty(value = "检测报告文件路径")
  private String expReport;

  @ApiModelProperty(value = "状态，0待实验，1已实验")
  @Length(min = 1, max = 1, message = "【状态，0待实验，1已实验】长度必须介于 {min} 和 {max} 之间")
  private String state;

  @ApiModelProperty(value = "del_flag")
  @Length(min = 1, max = 1, message = "【del_flag】长度必须介于 {min} 和 {max} 之间")
  private String delFlag;

}