package com.sw.mes.yb.seed.dto;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.TableField;
import com.sw.mes.yb.seed.utils.SeedCodeGenerator;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

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

@Data
public class InspectionDto implements Serializable {
    @ApiModelProperty(value = "籽晶编码")
    @ExcelProperty(value = "籽晶编码")
    private String seedCode;
    /**
     * 计划单号
     */
    @ApiModelProperty(value = "计划单号")
    @ExcelProperty(value = "计划单号")
    private String planCode;
    /**
     * 来源数据，圆棒 or 方棒
     */
    @ApiModelProperty(value = "来源数据")
    @ExcelProperty(value = "来源数据")
    private String source;

    /**
     * 单晶编号
     */
    @ApiModelProperty(value = "单晶编号")
    @ExcelProperty(value = "单晶编号")
    private String crystalNo;
    /**
     * 掺杂类型： U/N
     */
    @ApiModelProperty(value = "掺杂类型")
    @ExcelProperty(value = "掺杂类型")
    private String dopant;
    /**
     * 籽晶掏棒机台号
     */
    @ApiModelProperty(value = "籽晶掏棒机台号")
    @ExcelProperty(value = "籽晶掏棒机台号")
    private String seedCoringDevice;
    /**
     * 籽晶加工长度
     */
    @ApiModelProperty(value = "籽晶加工长度")
    @ExcelProperty(value = "籽晶加工长度")
    private long processLength;
    /**
     * 籽晶加工工单号，来自于erp
     */
    @ApiModelProperty(value = "籽晶加工工单号")
    @ExcelProperty(value = "籽晶加工工单号")
    private String processOrderNo;
    /**
     * 籽晶批次号
     */
    @ApiModelProperty(value = "籽晶批次号")
    @ExcelProperty(value = "籽晶批次号")
    private String seedBatchNo;
    /**
     * 批次号
     */
    @ApiModelProperty(value = "批次号")
    @ExcelProperty(value = "批次号")
    private String batchNo;
    /**
     * 最小工作中心编码，用于后期生成编号和检索使用
     */
    @ApiModelProperty(value = "最小工作中心编码")
    @ExcelProperty(value = "最小工作中心编码")
    private String workCenterCode;
    /**
     * 车间编码
     */
    @ApiModelProperty(value = "车间编码")
    @ExcelProperty(value = "车间编码")
    private String workShopCode;
    /**
     *物料编码
     */
    @ApiModelProperty(value = "物料编码",required = false)
    @ExcelProperty(value = "物料编码")
    private String materialCode;
    /**
     *物料名称
     */
    @ApiModelProperty(value = "物料名称",required = false)
    @ExcelProperty(value = "自检物料名称")
    private String materialName;
    /**
     *物料类型
     */
    @ApiModelProperty(value = "物料类型",required = false)
    @ExcelProperty(value = "物料类型")
    private String materialType;
    /**
     *规格
     */
    @ApiModelProperty(value = "规格",required = false)
    @ExcelProperty(value = "规格")
    private String spec;
    /**
     *物料型号
     */
    @ApiModelProperty(value = "物料型号",required = false)
    @ExcelProperty(value = "物料型号")
    private String materialModel;
    /**
     *定向标识
     */
    @ApiModelProperty(value = "定向标识",required = false)
    @ExcelProperty(value = "定向标识")
    private String directionalSign;

    /**
     *检测时间
     */
    @ApiModelProperty(value = "检测时间",required = false)
    @ExcelProperty(value = "检测时间")
    private Date detectionTime;

    /**
     *设备编码
     */
    @ApiModelProperty(value = "设备编码",required = false)
    @ExcelProperty(value = "设备编码")
    private String deviceCode;
    /**
     * 头尾识别
     */
    @ApiModelProperty(value = "头尾识别")
    @ExcelProperty(value = "头尾识别")
    private String headTailRecognition;
    /**
     * 锥度
     */
    @ApiModelProperty(value = "锥度")
    @ExcelProperty(value = "自检锥度")
    private Double taper;
    /**
     * 总长度
     */
    @ApiModelProperty(value = "总长度")
    @ExcelProperty(value = "自检总长度")
    private Double totalLength;
    /**
     * 理论重量
     */
    @ApiModelProperty(value = "理论重量")
    @ExcelProperty(value = "自检理论重量")
    private String theWeight;
    /**
     *总长度大头长度
     */
    @ApiModelProperty(value = "总长度大头长度")
    @ExcelProperty(value = "自检总长度大头长度")
    private Double totalBigLength;
    /**
     *小头长度
     */
    @ApiModelProperty(value = "小头长度")
    @ExcelProperty(value = "自检小头长度")
    private Double smallLength;
    /**
     *小头平均直径
     */
    @ApiModelProperty(value = "小头平均直径")
    @ExcelProperty(value = "自检小头平均直径")
    private Double smallAverageDiameter;
    /**
     *大头平均直径
     */
    @ApiModelProperty(value = "大头平均直径")
    @ExcelProperty(value = "自检大头平均直径")
    private Double bigAverageDiameter;
    /**
     *小头直径最小值
     */
    @ApiModelProperty(value = "小头直径最小值")
    @ExcelProperty(value = "自检小头直径最小值")
    private Double smallDiameterMin;
    /**
     *小头直径最大值
     */
    @ApiModelProperty(value = "小头直径最大值")
    @ExcelProperty(value = "自检小头直径最大值")
    private Double smallDiameterMax;
    /**
     *大头直径最小值
     */
    @ApiModelProperty(value = "大头直径最小值")
    @ExcelProperty(value = "自检大头直径最小值")
    private Double bigDiameterMin;
    /**
     *大头直径最大值
     */
    @ApiModelProperty(value = "大头直径最大值")
    @ExcelProperty(value = "自检大头直径最大值")
    private Double bigDiameterMax;
    /**
     *同轴度
     */
    @ApiModelProperty(value = "同轴度")
    @ExcelProperty(value = "自检同轴度")
    private Double coaxiality;
    /**
     *隐裂
     */
    @ApiModelProperty(value = "隐裂")
    @ExcelProperty(value = "自检隐裂")
    private Double subfissure;
    /**
     *是否合格
     */
    @ApiModelProperty(value = "是否合格")
    @ExcelProperty(value = "自检是否合格")
    private Boolean isQualified;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @ExcelProperty(value = "自检创建人")
    private String createBy;

    /**
     * 创建日期
     */
    @ApiModelProperty(value = "创建日期")
    @ExcelProperty(value = "自检创建日期")
    private Date createDate;
    /**
     * 锥度
     */
    @ApiModelProperty(value = "锥度")
    @ExcelProperty(value = "IQC锥度")
    private Double iqcTaper;
    /**
     * 总长度
     */
    @ApiModelProperty(value = "总长度")
    @ExcelProperty(value = "IQC总长度")
    private Double iqcTotalLength;
    /**
     * 理论重量
     */
    @ApiModelProperty(value = "理论重量(后端计算得出)",required = false)
    @ExcelProperty(value = "IQC理论重量")
    private String iqcTheWeight;
    /**
     *总长度大头长度
     */
    @ApiModelProperty(value = "总长度大头长度")
    @ExcelProperty(value = "IQC总长度大头长度")
    private Double iqcTotalBigLength;
    /**
     *小头长度
     */
    @ApiModelProperty(value = "小头长度")
    @ExcelProperty(value = "IQC小头长度")
    private Double iqcSmallLength;
    /**
     *小头平均直径
     */
    @ApiModelProperty(value = "小头平均直径")
    @ExcelProperty(value = "IQC小头平均直径")
    private Double iqcSmallAverageDiameter;
    /**
     *大头平均直径
     */
    @ApiModelProperty(value = "大头平均直径")
    @ExcelProperty(value = "IQC大头平均直径")
    private Double iqcBigAverageDiameter;
    /**
     *小头直径最小值
     */
    @ApiModelProperty(value = "小头直径最小值")
    @ExcelProperty(value = "IQC小头直径最小值")
    private Double iqcSmallDiameterMin;
    /**
     *小头直径最大值
     */
    @ApiModelProperty(value = "小头直径最大值")
    @ExcelProperty(value = "IQC小头直径最大值")
    private Double iqcSmallDiameterMax;
    /**
     *大头直径最小值
     */
    @ApiModelProperty(value = "大头直径最小值")
    @ExcelProperty(value = "IQC大头直径最小值")
    private Double iqcBigDiameterMin;
    /**
     *大头直径最大值
     */
    @ApiModelProperty(value = "大头直径最大值")
    @ExcelProperty(value = "IQC大头直径最大值")
    private Double iqcBigDiameterMax;
    /**
     *同轴度
     */
    @ApiModelProperty(value = "同轴度")
    @ExcelProperty(value = "IQC同轴度")
    private Double iqcCoaxiality;
    /**
     *隐裂
     */
    @ApiModelProperty(value = "隐裂")
    @ExcelProperty(value = "IQC隐裂")
    private Double iqcSubfissure;
    /**
     *是否合格
     */
    @ApiModelProperty(value = "是否合格")
    @ExcelProperty(value = "IQC是否合格")
    private Boolean iqcIsQualified;
    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @ExcelProperty(value = "IQC创建人")
    private String iqcCreateBy;

    /**
     * 创建日期
     */
    @ApiModelProperty(value = "创建日期")
    @ExcelProperty(value = "IQC创建日期")
    private Date iqcCreateDate;

}
