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

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

import java.util.List;


/**
 * @Description:
 * @Author: adair.song
 * @Date: 2020/05/22 14:24
 * @Modify:
 */
@Data
public class ProductInfoManageModel {

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

    @ApiParam("VIN号")
    private String vinCode;

    @ApiParam("车型")
    private String prodCfgTypeCode;

    @ApiParam("等级代码")
    private String gradeCode;

    @ApiParam("产品颜色")
    private String produceColor;

    @ApiParam("产品位置")
    private String produceCategoryCode;

    @ApiParam("物料号")
    private String partNo;

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

    @ApiParam("产品条码")
    private String productSn;

    @ApiParam("队列明细序号")
    private Double seq;

    @ApiParam("条码状态")
    private Integer snStatus;

    @ApiParam("质量状态")
    private Integer qcStatus;

    @ApiParam("下线时间")
    private String outWorkCenterTime;

    @ApiParam("切换时间")
    private String switchTime;

    @ApiParam("工厂")
    private String organizeCode;

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

    @ApiParam("工位")
    private String workCellCode;

    @ApiParam("队列类型")
    private Integer queueType;

    @ApiParam("工单类型")
    private String workType;

    @ApiParam("待生产序列")
    private Integer prodNum;

    @ApiParam("主队列序列")
    private Double queueSeq;

    @ApiParam("明细队列序列")
    private Double queDetailSeq;

    @ApiParam("主队列编号")
    private String orderNo;

    @ApiParam("校验VIN")
    private String checkVinCode;

    @ApiParam("总队列类型")
    private List<Integer> queueTypeList;

    @ApiParam("总工单类型")
    private List<String> workTypeList;

    public ProductInfoManageModel() {
    }

    public ProductInfoManageModel(String vinCode, String prodCfgTypeCode, String gradeCode, String produceColor, Double queDetailSeq) {
        this.vinCode = vinCode;
        this.prodCfgTypeCode = prodCfgTypeCode;
        this.gradeCode = gradeCode;
        this.produceColor = produceColor;
        this.queDetailSeq = queDetailSeq;
    }

    public ProductInfoManageModel(String vinCode, String produceCategoryCode, String orderNo, Double queDetailSeq,
                                  Double queueSeq, String workType, String produceColor) {
        this.vinCode = vinCode;
        this.produceCategoryCode = produceCategoryCode;
        this.orderNo = orderNo;
        this.queDetailSeq = queDetailSeq;
        this.queueSeq = queueSeq;
        this.workType = workType;
        this.produceColor = produceColor;
    }
}
