package com.sw.mes.store.dto;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @Author wupeng
 * @Description 库存表warehouse_inventory
 * @Date 11:57 2023/7/31
 * @Param
 * @return
 **/
@Data
@ApiModel(value = "库存表Dto")
public class WarehouseInventoryDto {
    @ExcelIgnore
    private Long id;
    @ApiModelProperty(value = "物料主数据ID", required = true)
    @ExcelIgnore
    private Long materialModelId;
    @ApiModelProperty(value = "物料主数据料号")
    @ExcelProperty(value = "物料主数据料号")
    private String materialModelCode;
    @ApiModelProperty(value = "物料主数据名称")
    @ExcelProperty(value = "物料主数据名称")
    private String materialModelName;
    @ApiModelProperty(value = "物料主数据类型")
    @ExcelProperty(value = "物料主数据类型")
    private String materialTypeName;
    @ApiModelProperty(value = "物料主数据类别")
    @ExcelProperty(value = "物料主数据类别")
    private String materialCategoryName;
    @ApiModelProperty(value = "物料等级")
    @ExcelProperty(value = "物料等级")
    private String materialLevel;
    @ApiModelProperty(value = "直径")
    @ExcelProperty(value = "直径")
    private String diameter;
    @ApiModelProperty(value = "唯一码")
    @ExcelProperty(value = "唯一码")
    private String uniqueCode;
    @ApiModelProperty(value = "批次号")
    @ExcelProperty(value = "批次号")
    private String batchNo;
    @ApiModelProperty(value = "物料主数据供应商")
    @ExcelProperty(value = "物料主数据供应商")
    private String supplier;
    @ApiModelProperty(value = "物料主数据规格")
    @ExcelProperty(value = "物料主数据规格")
    private String specification;
    @ApiModelProperty(value = "物料主数据图号")
    @ExcelProperty(value = "物料主数据图号")
    private String materialTh;
    @ApiModelProperty(value = "库存数量")
    @ExcelProperty(value = "库存数量")
    private BigDecimal quantity;
    @ApiModelProperty(value = "锁定库存数量")
    @ExcelProperty(value = "锁定库存数量")
    private BigDecimal lockQuantity;
    @ApiModelProperty(value = "物料单位")
    @ExcelProperty(value = "物料单位")
    private String unitName;
    @ApiModelProperty(value = "库位ID")
    @ExcelIgnore
    private Long warehouseId;
    @ApiModelProperty(value = "库位名称")
    @ExcelProperty(value = "库位名称")
    private String warehouseName;
    @ApiModelProperty(value = "库位编码")
    @ExcelProperty(value = "库位编码")
    private String warehouseCode;
    @ApiModelProperty(value = "入库人ID")
    @ExcelIgnore
    private Integer receiveUserId;
    @ApiModelProperty(value = "入库人名称")
    @ExcelProperty(value = "入库人名称")
    private String receiveUserName;
    @ApiModelProperty(value = "接受时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelProperty(value = "接受时间")
    private Date receiveTime;
    @ApiModelProperty(value = "物料型号")
    @ExcelProperty(value = "物料型号")
    private String materialXh;
    @ApiModelProperty(value = "停留时间")
    @ExcelProperty(value = "停留时间")
    private Integer residenceTime;
    @ApiModelProperty(value = "停留时间单位")
    @ExcelProperty(value = "停留时间单位")
    private String timeUnit;
    @ApiModelProperty(value = "安全库存")
    @ExcelProperty(value = "安全库存")
    private String safetyStock;
    @ApiModelProperty("逻辑删除")
    @ExcelIgnore
    private Boolean del = false;
    @ApiModelProperty("载具编号")
    @ExcelProperty(value = "载具编号")
    private String traceid;
    @ApiModelProperty("SAP工厂")
    @ExcelProperty(value = "SAP工厂")
    private String customer;
    @ApiModelProperty("物料粒径")
    @ExcelProperty(value = "物料粒径")
    private String suppliesGrain;
    @ApiModelProperty("物料档位")
    @ExcelProperty(value = "物料档位")
    private String materialGear;
    @ApiModelProperty("箱号")
    @ExcelProperty(value = "箱号")
    private String serialNo;
    @ApiModelProperty("晶编编码")
    @ExcelProperty(value = "晶编编码")
    private String crystalNo;
}