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

import cn.estsh.i3plus.pojo.base.enumutil.MesPcnEnumUtil;
import io.swagger.annotations.ApiParam;
import lombok.Data;

import java.io.Serializable;

@Data
public class QueueJisModel implements Serializable {

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

    @ApiParam("vin")
    private String vinCode;

    @ApiParam("车号")
    private String carNo;

    @ApiParam("排序")
    private Double seq;

    @ApiParam("状态")
    private Integer status;

    @ApiParam("产品配置代码")
    private String prodCfgCode;

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

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

    @ApiParam("产品类型代码")
    private String produceCategoryCode;

    @ApiParam("明细状态")
    private Integer detailStatus;

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

    @ApiParam("明细整体状态")
    private Integer finalStatus;

    @ApiParam("状态名称")
    private String statusName;

    @ApiParam("明细状态名称")
    private String detailStatusName;

    @ApiParam("明细整体状态名称")
    private String finalStatusName;

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

    public String getStatusName() {
        return MesPcnEnumUtil.JIS_QUEUE_STATUS.valueOfDescription(this.status);
    }

    public String getDetailStatusName() {
        return MesPcnEnumUtil.JIS_QUEUE_STATUS.valueOfDescription(this.detailStatus);
    }

    public String getFinalStatusName() {
        return MesPcnEnumUtil.JIS_QUEUE_STATUS.valueOfDescription(this.finalStatus);
    }

    public QueueJisModel() {
    }

    public QueueJisModel(String jisNo, String vinCode, String carNo, Double seq, Integer status, String prodCfgCode, String partNo, String partNameRdd, String produceCategoryCode, Integer detailStatus, String serialNumber, Integer finalStatus) {
        this.jisNo = jisNo;
        this.vinCode = vinCode;
        this.carNo = carNo;
        this.seq = seq;
        this.status = status;
        this.prodCfgCode = prodCfgCode;
        this.partNo = partNo;
        this.partNameRdd = partNameRdd;
        this.produceCategoryCode = produceCategoryCode;
        this.detailStatus = detailStatus;
        this.serialNumber = serialNumber;
        this.finalStatus = finalStatus;
    }

}
