package com.sw.mes.itemclean.clean.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.sw.mes.itemclean.clean.domain.MaterialRewrkingDetail;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

/**
 * 暂存打签vo
 */
@Getter
@Setter
@ApiModel(value = "MaterialReworkingVo对象", description = "返工暂存打签vo")
public class MaterialReworkingVo implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键")
    private Integer id;

    @ApiModelProperty("成箱号")
    private String materialBoxNo;

    @ApiModelProperty("返工成箱重量")
    private BigDecimal weight;

    @ApiModelProperty("返工工序")
    private String reworkProcedure;

    @ApiModelProperty("返工重量")
    private BigDecimal reworkWeight;

    @ApiModelProperty("备注")
    private String note;

    @ApiModelProperty("返工原因")
    private String reworkDesc;

    @ApiModelProperty("物料编号")
    private String materialCode;

    @ApiModelProperty("物料名称")
    private String materialName;

    @ApiModelProperty("物料等级")
    private String materialLevel;

    @ApiModelProperty("物料型号")
    private String materialModel;

    @ApiModelProperty("电阻档位")
    private String materialGear;

    @ApiModelProperty("生产批次")
    private String productBatchNo;

    @ApiModelProperty("暂存标记")
    private Integer stagingFlag;

    @ApiModelProperty("逻辑删除标记")
    private Integer delFlag;

    @ApiModelProperty("创建人")
    private String createUser;

    @ApiModelProperty("物料属性：1原生多晶、2回收料、3返工料、4落地料、5清洗料、6破碎料")
    /**
     * {@link com.sw.mes.core.enums.ItemCleanEnums.MaterialType}
     */
    private Integer materialType;

    @ApiModelProperty("创建时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime createTime;

    @ApiModelProperty("更新人")
    private String updateUser;

    @ApiModelProperty("更新时间")
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
    private LocalDateTime updateTime;

    @ApiModelProperty("返工暂存打签详情信息")
    private List<MaterialRewrkingDetail> materialRewrkingDetails;


}
