package com.bonus.canteen.core.supermarket.vo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.bonus.canteen.core.common.utils.SysUtil;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

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

@ApiModel
public class MqSupermarketProductVO {
   @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 String getImgUrl() {
      return SysUtil.getCutFileUrl(this.imgUrl);
   }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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