package com.bonus.canteen.core.drp.model;

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

import java.math.BigDecimal;
import java.time.LocalDateTime;

@ApiModel(
   value = "入库记录表",
   description = "入库记录表"
)
public class DrpIntoInventory {
   @ApiModelProperty("主键id")
   @TableId(
      value = "id",
      type = IdType.AUTO
   )
   private Long id;
   @ApiModelProperty("入库记录id")
   private String intoId;
   @ApiModelProperty("仓库id")
   private Long warehouseId;
   @ApiModelProperty("入库时间")
   private LocalDateTime intoDate;
   @ApiModelProperty("总价")
   private Long totalAmount;
   @ApiModelProperty("合计数量")
   private BigDecimal totalNum;
   @ApiModelProperty("入库类型(1-采购入库,2-退料入库,3-调拨入库)")
   private Integer intoType;
   @ApiModelProperty("入库状态(1-待入库,2-已入库)")
   private Integer status;
   @ApiModelProperty("备注")
   private String remark;
   @ApiModelProperty("关联超市退款出库单号")
   private String refundOutId;
   @ApiModelProperty("关联送货单id")
   private String relateDeliveryGoodsId;
   @ApiModelProperty("删除标识(1-删除,2-正常)")
   private Integer delFlag;
   @TableField(
      value = "crby",
      fill = FieldFill.INSERT
   )
   @ApiModelProperty("创建人")
   private String crby;
   @TableField(
      value = "crtime",
      fill = FieldFill.INSERT
   )
   @ApiModelProperty("创建时间")
   private LocalDateTime crtime;
   @TableField(
      value = "upby",
      fill = FieldFill.UPDATE
   )
   @ApiModelProperty("更新人")
   private String upby;
   @TableField(
      value = "uptime",
      fill = FieldFill.UPDATE
   )
   @ApiModelProperty("更新时间")
   private LocalDateTime uptime;
   @ApiModelProperty("关联采购订单号")
   private String relateOrderGoodsId;
   @ApiModelProperty("关联验货单号")
   private String relateInspectGoodsId;
   @ApiModelProperty("即入即出关联出库单号")
   private String intoRelateOutId;
   @ApiModelProperty("货品调拨id")
   private String goodsAllocationId;

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

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

   public Long getWarehouseId() {
      return this.warehouseId;
   }

   public LocalDateTime getIntoDate() {
      return this.intoDate;
   }

   public Long getTotalAmount() {
      return this.totalAmount;
   }

   public BigDecimal getTotalNum() {
      return this.totalNum;
   }

   public Integer getIntoType() {
      return this.intoType;
   }

   public Integer getStatus() {
      return this.status;
   }

   public String getRemark() {
      return this.remark;
   }

   public String getRefundOutId() {
      return this.refundOutId;
   }

   public String getRelateDeliveryGoodsId() {
      return this.relateDeliveryGoodsId;
   }

   public Integer getDelFlag() {
      return this.delFlag;
   }

   public String getCrby() {
      return this.crby;
   }

   public LocalDateTime getCrtime() {
      return this.crtime;
   }

   public String getUpby() {
      return this.upby;
   }

   public LocalDateTime getUptime() {
      return this.uptime;
   }

   public String getRelateOrderGoodsId() {
      return this.relateOrderGoodsId;
   }

   public String getRelateInspectGoodsId() {
      return this.relateInspectGoodsId;
   }

   public String getIntoRelateOutId() {
      return this.intoRelateOutId;
   }

   public String getGoodsAllocationId() {
      return this.goodsAllocationId;
   }

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

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

   public DrpIntoInventory setWarehouseId(final Long warehouseId) {
      this.warehouseId = warehouseId;
      return this;
   }

   public DrpIntoInventory setIntoDate(final LocalDateTime intoDate) {
      this.intoDate = intoDate;
      return this;
   }

   public DrpIntoInventory setTotalAmount(final Long totalAmount) {
      this.totalAmount = totalAmount;
      return this;
   }

   public DrpIntoInventory setTotalNum(final BigDecimal totalNum) {
      this.totalNum = totalNum;
      return this;
   }

   public DrpIntoInventory setIntoType(final Integer intoType) {
      this.intoType = intoType;
      return this;
   }

   public DrpIntoInventory setStatus(final Integer status) {
      this.status = status;
      return this;
   }

   public DrpIntoInventory setRemark(final String remark) {
      this.remark = remark;
      return this;
   }

   public DrpIntoInventory setRefundOutId(final String refundOutId) {
      this.refundOutId = refundOutId;
      return this;
   }

   public DrpIntoInventory setRelateDeliveryGoodsId(final String relateDeliveryGoodsId) {
      this.relateDeliveryGoodsId = relateDeliveryGoodsId;
      return this;
   }

   public DrpIntoInventory setDelFlag(final Integer delFlag) {
      this.delFlag = delFlag;
      return this;
   }

   public DrpIntoInventory setCrby(final String crby) {
      this.crby = crby;
      return this;
   }

   public DrpIntoInventory setCrtime(final LocalDateTime crtime) {
      this.crtime = crtime;
      return this;
   }

   public DrpIntoInventory setUpby(final String upby) {
      this.upby = upby;
      return this;
   }

   public DrpIntoInventory setUptime(final LocalDateTime uptime) {
      this.uptime = uptime;
      return this;
   }

   public DrpIntoInventory setRelateOrderGoodsId(final String relateOrderGoodsId) {
      this.relateOrderGoodsId = relateOrderGoodsId;
      return this;
   }

   public DrpIntoInventory setRelateInspectGoodsId(final String relateInspectGoodsId) {
      this.relateInspectGoodsId = relateInspectGoodsId;
      return this;
   }

   public DrpIntoInventory setIntoRelateOutId(final String intoRelateOutId) {
      this.intoRelateOutId = intoRelateOutId;
      return this;
   }

   public DrpIntoInventory setGoodsAllocationId(final String goodsAllocationId) {
      this.goodsAllocationId = goodsAllocationId;
      return this;
   }

}
