package com.bonus.core.supermarket.model;

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

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

@ApiModel(
   value = "超市商品表",
   description = "超市商品表"
)
public class SupermarketProduct {
   @ApiModelProperty("超市商品明细id")
   private Long supermarketDetailId;
   @ApiModelProperty("超市id")
   private Long supermarketId;
   @ApiModelProperty("商品id")
   private Long materialId;
   @ApiModelProperty("上架状态(1-上架,2-下架)")
   private Integer putawayState;
   @ApiModelProperty("是否线上销售(1-是,2-否)")
   private Integer ifOnline;
   @ApiModelProperty("销售价")
   private Integer salePrice;
   @ApiModelProperty("优惠价")
   private Integer prefPrice;
   @ApiModelProperty("个人限购数量")
   private Integer personLimit;
   @ApiModelProperty("每日限购数量")
   private Integer oneDayLimit;
   @ApiModelProperty("图片")
   private String imgUrl;
   @ApiModelProperty("库存数")
   private BigDecimal inventoryNum;
   @ApiModelProperty("乐观锁 ")
   private Integer revision;
   @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;

   public Long getSupermarketDetailId() {
      return this.supermarketDetailId;
   }

   public Long getSupermarketId() {
      return this.supermarketId;
   }

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

   public Integer getPutawayState() {
      return this.putawayState;
   }

   public Integer getIfOnline() {
      return this.ifOnline;
   }

   public Integer getSalePrice() {
      return this.salePrice;
   }

   public Integer getPrefPrice() {
      return this.prefPrice;
   }

   public Integer getPersonLimit() {
      return this.personLimit;
   }

   public Integer getOneDayLimit() {
      return this.oneDayLimit;
   }

   public String getImgUrl() {
      return this.imgUrl;
   }

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

   public Integer getRevision() {
      return this.revision;
   }

   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 SupermarketProduct setSupermarketDetailId(final Long supermarketDetailId) {
      this.supermarketDetailId = supermarketDetailId;
      return this;
   }

   public SupermarketProduct setSupermarketId(final Long supermarketId) {
      this.supermarketId = supermarketId;
      return this;
   }

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

   public SupermarketProduct setPutawayState(final Integer putawayState) {
      this.putawayState = putawayState;
      return this;
   }

   public SupermarketProduct setIfOnline(final Integer ifOnline) {
      this.ifOnline = ifOnline;
      return this;
   }

   public SupermarketProduct setSalePrice(final Integer salePrice) {
      this.salePrice = salePrice;
      return this;
   }

   public SupermarketProduct setPrefPrice(final Integer prefPrice) {
      this.prefPrice = prefPrice;
      return this;
   }

   public SupermarketProduct setPersonLimit(final Integer personLimit) {
      this.personLimit = personLimit;
      return this;
   }

   public SupermarketProduct setOneDayLimit(final Integer oneDayLimit) {
      this.oneDayLimit = oneDayLimit;
      return this;
   }

   public SupermarketProduct setImgUrl(final String imgUrl) {
      this.imgUrl = imgUrl;
      return this;
   }

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

   public SupermarketProduct setRevision(final Integer revision) {
      this.revision = revision;
      return this;
   }

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

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

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

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