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

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDateTime;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import javax.persistence.Column;

/**
 * <p>
 * 组托明细
 * </p>
 *
 * @author liuzemin
 * @since 2022-11-10
 */
@Getter
@Setter
@TableName("material_group_detail")
@ApiModel(value = "MaterialGroupDetail对象", description = "组托明细")
public class MaterialGroupDetail implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("主键")
    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

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

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

    @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("组托id")
    private Integer groupId;

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

    @ApiModelProperty("创建时间")
    private LocalDateTime createTime;

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

    @ApiModelProperty("更新时间")
    private LocalDateTime updateTime;

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

    /**
     * ERP上报状态，0 未上报，1 已上报
     */
    @Column(length=3)
    @ApiModelProperty("ERP上报状态，0 未上报，1 已上报")
    private Integer reportedState = 0;

    @ApiModelProperty("ERP工单")
    private String aufnr;

    /**
     * ERP订单编号
     */
    @Column(length = 30)
    private String erpOrder;

    /**
     * erp库位
     */
    @ApiModelProperty("erp库位")
    private String erpWarehouseCode;

    @ApiModelProperty("成品编号")
    private String finishedCode;

    @ApiModelProperty("erp上报时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime erpTime;

    @ApiModelProperty(value = "组托状态（0 未组托  1 已组托）")
    Integer status;

    @ApiModelProperty("托号")
    private String groupNo;

    @ApiModelProperty("破碎id")
    private Integer brokenId;

    @ApiModelProperty(value = "粒径范围")
    private String suppliesGrain;

    @ApiModelProperty(value = "小箱详情备注")
    private String remark;
}
