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

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

import java.time.LocalDate;
import java.time.LocalDateTime;

@ApiModel(
   value = "DrpMaterialInquiry对象",
   description = "货品招标单表"
)
@TableName(
   value = "drp_material_inquiry",
   autoResultMap = true
)
public class DrpMaterialInquiry {
   @ApiModelProperty("货品招标单号")
   @TableId
   private String materialInquiryId;
   @ApiModelProperty("货品招标标题")
   private String materialInquiryTitle;
   @ApiModelProperty("招标开始时间")
   private LocalDateTime tenderStartTime;
   @ApiModelProperty("招标结束时间")
   private LocalDateTime tenderEndTime;
   @ApiModelProperty("报价开始时间")
   private LocalDateTime startTime;
   @ApiModelProperty("报价结束时间")
   private LocalDateTime endTime;
   @ApiModelProperty("招标预算")
   private Long tenderBudget;
   @ApiModelProperty("资金来源")
   private String fundingSource;
   @ApiModelProperty("招标类型，1邀请 2公开")
   private Integer tenderType;
   @ApiModelProperty("中标价格有效期开始")
   private LocalDateTime bidValidityStartTime;
   @ApiModelProperty("中标价格有效期结束")
   private LocalDateTime bidValidityEndTime;
   @ApiModelProperty("联系人")
   private String linkMan;
   @ApiModelProperty("联系电话")
   private String linkPhone;
   @ApiModelProperty("已发起意向中标价状态（1已发起,2未发起）")
   private String targetPriceStatus;
   @ApiModelProperty("备注")
   private String remark;
   @ApiModelProperty("审批状态(1待审批,2审批审批状态(1待审批,2审批中,3审批同意,4审批拒绝)")
   private Integer approveStatus;
   @ApiModelProperty("提交状态 1待提交 2已提交")
   private Integer status;
   @ApiModelProperty("发布状态 1待发布 2已发布,3 流标")
   private Integer releaseStatus;
   @ApiModelProperty("发布时间")
   private LocalDateTime releaseTime;
   @TableField(
      value = "createBy",
      fill = FieldFill.INSERT
   )
   @ApiModelProperty("创建人")
   private String createBy;
   private LocalDateTime createTime;
   @ApiModelProperty("更新人")
   private String updateBy;
   @ApiModelProperty("更新时间")
   private LocalDateTime updateTime;
   @ApiModelProperty("审批流ID")
   private Long processInstanceId;
   @ApiModelProperty("公告")
   private String announcement;
   @ApiModelProperty("是否删除 1是 2否")
   private Integer delFlag;
   @ApiModelProperty("审批人")
   private String approveBy;
   @ApiModelProperty("审批完成时间")
   private LocalDateTime approveTime;
   @ApiModelProperty("审批备注")
   private String approveRemark;
   @ApiModelProperty("交货时间")
   private LocalDate deliveryTime;
   @ApiModelProperty("区域-省")
   private String regionProvince;
   @ApiModelProperty("区域-市")
   private String regionCity;
   @ApiModelProperty("区域-区")
   private String regionDistrict;
   @ApiModelProperty("详细地址")
   private String address;
   @ApiModelProperty("区域ID")
   private Long areaId;

   public String getMaterialInquiryId() {
      return this.materialInquiryId;
   }

   public String getMaterialInquiryTitle() {
      return this.materialInquiryTitle;
   }

   public LocalDateTime getTenderStartTime() {
      return this.tenderStartTime;
   }

   public LocalDateTime getTenderEndTime() {
      return this.tenderEndTime;
   }

   public LocalDateTime getStartTime() {
      return this.startTime;
   }

   public LocalDateTime getEndTime() {
      return this.endTime;
   }

   public Long getTenderBudget() {
      return this.tenderBudget;
   }

   public String getFundingSource() {
      return this.fundingSource;
   }

   public Integer getTenderType() {
      return this.tenderType;
   }

   public LocalDateTime getBidValidityStartTime() {
      return this.bidValidityStartTime;
   }

   public LocalDateTime getBidValidityEndTime() {
      return this.bidValidityEndTime;
   }

   public String getLinkMan() {
      return this.linkMan;
   }

   public String getLinkPhone() {
      return this.linkPhone;
   }

   public String getTargetPriceStatus() {
      return this.targetPriceStatus;
   }

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

   public Integer getApproveStatus() {
      return this.approveStatus;
   }

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

   public Integer getReleaseStatus() {
      return this.releaseStatus;
   }

   public LocalDateTime getReleaseTime() {
      return this.releaseTime;
   }

   public Long getProcessInstanceId() {
      return this.processInstanceId;
   }

   public String getAnnouncement() {
      return this.announcement;
   }

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

   public String getApproveBy() {
      return this.approveBy;
   }

   public LocalDateTime getApproveTime() {
      return this.approveTime;
   }

   public String getApproveRemark() {
      return this.approveRemark;
   }

   public LocalDate getDeliveryTime() {
      return this.deliveryTime;
   }

   public String getRegionProvince() {
      return this.regionProvince;
   }

   public String getRegionCity() {
      return this.regionCity;
   }

   public String getRegionDistrict() {
      return this.regionDistrict;
   }

   public String getAddress() {
      return this.address;
   }

   public Long getAreaId() {
      return this.areaId;
   }

   public DrpMaterialInquiry setMaterialInquiryId(final String materialInquiryId) {
      this.materialInquiryId = materialInquiryId;
      return this;
   }

   public DrpMaterialInquiry setMaterialInquiryTitle(final String materialInquiryTitle) {
      this.materialInquiryTitle = materialInquiryTitle;
      return this;
   }

   public DrpMaterialInquiry setTenderStartTime(final LocalDateTime tenderStartTime) {
      this.tenderStartTime = tenderStartTime;
      return this;
   }

   public DrpMaterialInquiry setTenderEndTime(final LocalDateTime tenderEndTime) {
      this.tenderEndTime = tenderEndTime;
      return this;
   }

   public DrpMaterialInquiry setStartTime(final LocalDateTime startTime) {
      this.startTime = startTime;
      return this;
   }

   public DrpMaterialInquiry setEndTime(final LocalDateTime endTime) {
      this.endTime = endTime;
      return this;
   }

   public DrpMaterialInquiry setTenderBudget(final Long tenderBudget) {
      this.tenderBudget = tenderBudget;
      return this;
   }

   public DrpMaterialInquiry setFundingSource(final String fundingSource) {
      this.fundingSource = fundingSource;
      return this;
   }

   public DrpMaterialInquiry setTenderType(final Integer tenderType) {
      this.tenderType = tenderType;
      return this;
   }

   public DrpMaterialInquiry setBidValidityStartTime(final LocalDateTime bidValidityStartTime) {
      this.bidValidityStartTime = bidValidityStartTime;
      return this;
   }

   public DrpMaterialInquiry setBidValidityEndTime(final LocalDateTime bidValidityEndTime) {
      this.bidValidityEndTime = bidValidityEndTime;
      return this;
   }

   public DrpMaterialInquiry setLinkMan(final String linkMan) {
      this.linkMan = linkMan;
      return this;
   }

   public DrpMaterialInquiry setLinkPhone(final String linkPhone) {
      this.linkPhone = linkPhone;
      return this;
   }

   public DrpMaterialInquiry setTargetPriceStatus(final String targetPriceStatus) {
      this.targetPriceStatus = targetPriceStatus;
      return this;
   }

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

   public DrpMaterialInquiry setApproveStatus(final Integer approveStatus) {
      this.approveStatus = approveStatus;
      return this;
   }

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

   public DrpMaterialInquiry setReleaseStatus(final Integer releaseStatus) {
      this.releaseStatus = releaseStatus;
      return this;
   }

   public DrpMaterialInquiry setReleaseTime(final LocalDateTime releaseTime) {
      this.releaseTime = releaseTime;
      return this;
   }
   public DrpMaterialInquiry setProcessInstanceId(final Long processInstanceId) {
      this.processInstanceId = processInstanceId;
      return this;
   }

   public DrpMaterialInquiry setAnnouncement(final String announcement) {
      this.announcement = announcement;
      return this;
   }

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

   public DrpMaterialInquiry setApproveBy(final String approveBy) {
      this.approveBy = approveBy;
      return this;
   }

   public DrpMaterialInquiry setApproveTime(final LocalDateTime approveTime) {
      this.approveTime = approveTime;
      return this;
   }

   public DrpMaterialInquiry setApproveRemark(final String approveRemark) {
      this.approveRemark = approveRemark;
      return this;
   }

   public DrpMaterialInquiry setDeliveryTime(final LocalDate deliveryTime) {
      this.deliveryTime = deliveryTime;
      return this;
   }

   public DrpMaterialInquiry setRegionProvince(final String regionProvince) {
      this.regionProvince = regionProvince;
      return this;
   }

   public DrpMaterialInquiry setRegionCity(final String regionCity) {
      this.regionCity = regionCity;
      return this;
   }

   public DrpMaterialInquiry setRegionDistrict(final String regionDistrict) {
      this.regionDistrict = regionDistrict;
      return this;
   }

   public DrpMaterialInquiry setAddress(final String address) {
      this.address = address;
      return this;
   }

   public DrpMaterialInquiry setAreaId(final Long areaId) {
      this.areaId = areaId;
      return this;
   }

   public String getCreateBy() {
      return createBy;
   }

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

   public LocalDateTime getCreateTime() {
      return createTime;
   }

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

   public String getUpdateBy() {
      return updateBy;
   }

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

   public LocalDateTime getUpdateTime() {
      return updateTime;
   }

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