package com.bonus.canteen.core.supply.purchase.domain.bo;

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.time.LocalDateTime;

@ApiModel(
   value = "DrpPurNotice对象",
   description = "采购通知"
)
public class DrpPurNotice {
   @ApiModelProperty("主键id")
   @TableId(
      value = "id",
      type = IdType.AUTO
   )
   private Integer id;
   @ApiModelProperty("通知id")
   private Long noticeId;
   @ApiModelProperty("采购单号")
   private String planId;
   @ApiModelProperty("供应商")
   private Long supplierId;
   @ApiModelProperty("供货单号")
   private String supplierSingleId;
   @ApiModelProperty("通知时间")
   private LocalDateTime noticeTime;
   @ApiModelProperty("通知结果(1成功2失败)")
   private Integer noticeStatus;
   @ApiModelProperty("失败原因")
   private String errorReason;
   @ApiModelProperty("1采购员通知供应商更改，2供应商通知采购员确认，3采购员通知供应商已确认")
   private Integer noticeProcess;
   @ApiModelProperty("通知类型(1正常通知2再次通知)")
   private Integer noticeType;
   @ApiModelProperty("通知方式(1邮件通知,2短信通知,3公众号通知 )")
   private Integer noticeStyle;
   @ApiModelProperty("乐观锁")
   private Integer revision;
   @ApiModelProperty("创建人")
   @TableField(
           value = "createBy",
           fill = FieldFill.INSERT
   )
   private String createBy;
   @ApiModelProperty("创建时间")
   @TableField(
           value = "createTime",
           fill = FieldFill.INSERT
   )
   private LocalDateTime createTime;
   @ApiModelProperty("更新人")
   @TableField(
           value = "updateBy",
           fill = FieldFill.UPDATE
   )
   private String updateBy;
   @ApiModelProperty("更新时间")
   @TableField(
           value = "updateTime",
           fill = FieldFill.UPDATE
   )
   private LocalDateTime updateTime;

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

   public Long getNoticeId() {
      return this.noticeId;
   }

   public String getPlanId() {
      return this.planId;
   }

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

   public String getSupplierSingleId() {
      return this.supplierSingleId;
   }

   public LocalDateTime getNoticeTime() {
      return this.noticeTime;
   }

   public Integer getNoticeStatus() {
      return this.noticeStatus;
   }

   public String getErrorReason() {
      return this.errorReason;
   }

   public Integer getNoticeProcess() {
      return this.noticeProcess;
   }

   public Integer getNoticeType() {
      return this.noticeType;
   }

   public Integer getNoticeStyle() {
      return this.noticeStyle;
   }

   public Integer getRevision() {
      return this.revision;
   }
   public DrpPurNotice setId(final Integer id) {
      this.id = id;
      return this;
   }

   public DrpPurNotice setNoticeId(final Long noticeId) {
      this.noticeId = noticeId;
      return this;
   }

   public DrpPurNotice setPlanId(final String planId) {
      this.planId = planId;
      return this;
   }

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

   public DrpPurNotice setSupplierSingleId(final String supplierSingleId) {
      this.supplierSingleId = supplierSingleId;
      return this;
   }

   public DrpPurNotice setNoticeTime(final LocalDateTime noticeTime) {
      this.noticeTime = noticeTime;
      return this;
   }

   public DrpPurNotice setNoticeStatus(final Integer noticeStatus) {
      this.noticeStatus = noticeStatus;
      return this;
   }

   public DrpPurNotice setErrorReason(final String errorReason) {
      this.errorReason = errorReason;
      return this;
   }

   public DrpPurNotice setNoticeProcess(final Integer noticeProcess) {
      this.noticeProcess = noticeProcess;
      return this;
   }

   public DrpPurNotice setNoticeType(final Integer noticeType) {
      this.noticeType = noticeType;
      return this;
   }

   public DrpPurNotice setNoticeStyle(final Integer noticeStyle) {
      this.noticeStyle = noticeStyle;
      return this;
   }

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

   public String getCreateBy() {
      return createBy;
   }

   public DrpPurNotice setCreateBy(String createBy) {
      this.createBy = createBy;
      return this;
   }

   public LocalDateTime getCreateTime() {
      return createTime;
   }

   public DrpPurNotice setCreateTime(LocalDateTime createTime) {
      this.createTime = createTime;
      return this;
   }

   public String getUpdateBy() {
      return updateBy;
   }

   public DrpPurNotice setUpdateBy(String updateBy) {
      this.updateBy = updateBy;
      return this;
   }

   public LocalDateTime getUpdateTime() {
      return updateTime;
   }

   public DrpPurNotice setUpdateTime(LocalDateTime updateTime) {
      this.updateTime = updateTime;
      return this;
   }
}
