package cn.estsh.i3plus.ext.mes.pojo.model;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiParam;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @author wangjie
 * @version 1.0
 * @date 2021/1/15 15:32
 **/
@Data
@ApiModel("出货总检报表model")
public class OqcLastCheckDetailModel implements Serializable {

    private static final long serialVersionUID = -8372691490603143022L;

    @ApiParam("id")
    private Long id;

    @ApiParam("工单号")
    private String workOrderNo;

    @ApiParam("物料编码")
    private String partNo;

    @ApiParam("物料名称")
    private String partNameRdd;

    @ApiParam("颜色")
    private String colorCode;

    @ApiParam("生产日期")
    private String workTime;

    @ApiParam("生产线")
    private String workCenterCode;

    @ApiParam("班次")
    private String shiftCode;

    @ApiParam("计划数量")
    private Double planQty;

    @ApiParam("抽检数量")
    private Double spotCheckQty;

    @ApiParam("检测范围")
    private Double checkLimit;

    @ApiParam("生产数量")
    private Double qty;

    @ApiParam("缺点数/不合格项目数")
    private Integer unQcQty;

    @ApiParam("检验结果")
    private Integer checkResult;

    @ApiParam("检验结果名称")
    private String checkResultName;

    @ApiParam("总检测单号")
    private String checkNo;

    @ApiParam("检验人")
    private String checkUser;

    @ApiParam("检验时间")
    private String confirmTime;

    @ApiParam("备注")
    private String remark;

    @ApiParam("单据明细")
    private List<OqcLastCheckDetailModel> detailList;

    @ApiParam("检验单号")
    private String oqcNo;

    @ApiParam("工单号")
    private String orderNo;

    @ApiParam("物料名称")
    private String partName;

    @ApiParam("产品类别")
    private String categoryCode3;

    @ApiParam("条码")
    private String serialNumber;

    @ApiParam("检验时间")
    private String checkTime;

    @ApiParam("批次范围")
    private Double batchLimit;

    @ApiParam("检验类型")
    private Integer oqcType;

    @ApiParam("检验类型名称")
    private String oqcTypeName;

    public OqcLastCheckDetailModel() {}

    public OqcLastCheckDetailModel(Long id, String workOrderNo, String partNo, String partNameRdd, String workTime, String workCenterCode, String shiftCode, Double planQty,
                                   Double spotCheckQty, Double checkLimit, Integer checkResult, String checkNo, String checkUser, String confirmTime, String remark, Double qty, String colorCode) {
        this.id = id;
        this.workOrderNo = workOrderNo;
        this.partNo = partNo;
        this.partNameRdd = partNameRdd;
        this.workTime = workTime;
        this.workCenterCode = workCenterCode;
        this.shiftCode = shiftCode;
        this.planQty = planQty;
        this.spotCheckQty = spotCheckQty;
        this.checkLimit = checkLimit;
        this.checkResult = checkResult;
        this.checkNo = checkNo;
        this.checkUser = checkUser;
        this.confirmTime = confirmTime;
        this.remark = remark;
        this.qty = qty;
        this.colorCode = colorCode;
    }

}
