package com.bonus.core.drp.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.time.LocalDate;

@ApiModel(
   value = "DrpIntoDetail对象",
   description = "入库记录明细表"
)
public class DrpIntoDetail {
   @ApiModelProperty("主键id")
   @TableId(
      value = "id",
      type = IdType.AUTO
   )
   private Long id;
   @ApiModelProperty("入库详情id")
   private Long detailId;
   @ApiModelProperty("入库单号")
   private String intoId;
   @ApiModelProperty("库存id")
   private Long inventoryId;
   @ApiModelProperty("原料id")
   private Long materialId;
   @ApiModelProperty("供应商id")
   private Long supplierId;
   @ApiModelProperty("计量单位id")
   private Long unitId;
   @ApiModelProperty("规格")
   private String size;
   @ApiModelProperty("单价")
   private Integer unitPrice;
   @ApiModelProperty("总价")
   private Integer totalPrice;
   @ApiModelProperty("交货数量")
   private BigDecimal deliveryNum;
   @ApiModelProperty("入库合格数量")
   private BigDecimal purNum;
   @ApiModelProperty("不合格数量")
   private BigDecimal unqualifiedNum;
   @ApiModelProperty("当前批次剩余库存数量")
   private BigDecimal inventoryNum;
   @ApiModelProperty("生产日期")
   private LocalDate productDate;
   @ApiModelProperty("到期时间(保质期)")
   private LocalDate expireTime;
   @ApiModelProperty("入库原料照片")
   private String materialUrl;
   @ApiModelProperty("是否补库存明细(1是2否)")
   private Integer ifFillInventory;
   @ApiModelProperty("关联采购订单明细id")
   private Long relateOrderGoodsDetailId;

   public Long getId() {
      return this.id;
   }

   public Long getDetailId() {
      return this.detailId;
   }

   public String getIntoId() {
      return this.intoId;
   }

   public Long getInventoryId() {
      return this.inventoryId;
   }

   public Long getMaterialId() {
      return this.materialId;
   }

   public Long getSupplierId() {
      return this.supplierId;
   }

   public Long getUnitId() {
      return this.unitId;
   }

   public String getSize() {
      return this.size;
   }

   public Integer getUnitPrice() {
      return this.unitPrice;
   }

   public Integer getTotalPrice() {
      return this.totalPrice;
   }

   public BigDecimal getDeliveryNum() {
      return this.deliveryNum;
   }

   public BigDecimal getPurNum() {
      return this.purNum;
   }

   public BigDecimal getUnqualifiedNum() {
      return this.unqualifiedNum;
   }

   public BigDecimal getInventoryNum() {
      return this.inventoryNum;
   }

   public LocalDate getProductDate() {
      return this.productDate;
   }

   public LocalDate getExpireTime() {
      return this.expireTime;
   }

   public String getMaterialUrl() {
      return this.materialUrl;
   }

   public Integer getIfFillInventory() {
      return this.ifFillInventory;
   }

   public Long getRelateOrderGoodsDetailId() {
      return this.relateOrderGoodsDetailId;
   }

   public DrpIntoDetail setId(final Long id) {
      this.id = id;
      return this;
   }

   public DrpIntoDetail setDetailId(final Long detailId) {
      this.detailId = detailId;
      return this;
   }

   public DrpIntoDetail setIntoId(final String intoId) {
      this.intoId = intoId;
      return this;
   }

   public DrpIntoDetail setInventoryId(final Long inventoryId) {
      this.inventoryId = inventoryId;
      return this;
   }

   public DrpIntoDetail setMaterialId(final Long materialId) {
      this.materialId = materialId;
      return this;
   }

   public DrpIntoDetail setSupplierId(final Long supplierId) {
      this.supplierId = supplierId;
      return this;
   }

   public DrpIntoDetail setUnitId(final Long unitId) {
      this.unitId = unitId;
      return this;
   }

   public DrpIntoDetail setSize(final String size) {
      this.size = size;
      return this;
   }

   public DrpIntoDetail setUnitPrice(final Integer unitPrice) {
      this.unitPrice = unitPrice;
      return this;
   }

   public DrpIntoDetail setTotalPrice(final Integer totalPrice) {
      this.totalPrice = totalPrice;
      return this;
   }

   public DrpIntoDetail setDeliveryNum(final BigDecimal deliveryNum) {
      this.deliveryNum = deliveryNum;
      return this;
   }

   public DrpIntoDetail setPurNum(final BigDecimal purNum) {
      this.purNum = purNum;
      return this;
   }

   public DrpIntoDetail setUnqualifiedNum(final BigDecimal unqualifiedNum) {
      this.unqualifiedNum = unqualifiedNum;
      return this;
   }

   public DrpIntoDetail setInventoryNum(final BigDecimal inventoryNum) {
      this.inventoryNum = inventoryNum;
      return this;
   }

   public DrpIntoDetail setProductDate(final LocalDate productDate) {
      this.productDate = productDate;
      return this;
   }

   public DrpIntoDetail setExpireTime(final LocalDate expireTime) {
      this.expireTime = expireTime;
      return this;
   }

   public DrpIntoDetail setMaterialUrl(final String materialUrl) {
      this.materialUrl = materialUrl;
      return this;
   }

   public DrpIntoDetail setIfFillInventory(final Integer ifFillInventory) {
      this.ifFillInventory = ifFillInventory;
      return this;
   }

   public DrpIntoDetail setRelateOrderGoodsDetailId(final Long relateOrderGoodsDetailId) {
      this.relateOrderGoodsDetailId = relateOrderGoodsDetailId;
      return this;
   }

}
