package com.bonus.canteen.core.supply.dto;

import com.bonus.canteen.core.utils.SysUtil;
import io.swagger.annotations.ApiModelProperty;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.List;

public class DrpSupplierAddDTO {
   @ApiModelProperty("供应商名称")
   private @NotBlank(
   message = "供应商名称不能为空!"
) String supplierName;
   @ApiModelProperty("区域Id")
   private @NotNull(
   message = "区域Id不能为空!"
) Long areaId;
   @ApiModelProperty("详细地址")
   private String address;
   @ApiModelProperty("主要联系人")
   private String linkman;
   @ApiModelProperty("主要联系人电话")
   private String linkmanNumber;
   @ApiModelProperty("主要邮箱")
   private String email;
   @ApiModelProperty("主要微信号")
   private String wechat;
   @ApiModelProperty("开户行")
   private String openingBank;
   @ApiModelProperty("银行账号")
   private String bankAccount;
   @ApiModelProperty("供应商简称")
   private String supplierSimpleName;
   @ApiModelProperty("供应商电话")
   private String telephone;
   @ApiModelProperty("公司网站")
   private String companyWeb;
   @ApiModelProperty("区域-省")
   private String regionProvince;
   @ApiModelProperty("区域-市")
   private String regionCity;
   @ApiModelProperty("区域-区")
   private String regionDistrict;
   @ApiModelProperty("税率(1=3,2=6,3=13)%")
   private Integer taxRate;
   @ApiModelProperty("账期（1日，2周，3月，4两个月，5季度，6半年，7年）")
   private Integer paymentDays;
   @ApiModelProperty("备用联系人")
   private String standbyLinkman;
   @ApiModelProperty("备用手机号")
   private String standbyPhone;
   @ApiModelProperty("备用微信")
   private String standbyWechat;
   @ApiModelProperty("备用邮箱")
   private String standbyEmail;
   @ApiModelProperty("供应类目")
   private List<Long> categoryIdList;
   @ApiModelProperty("注册资金(万元)")
   private BigDecimal registFund;
   @ApiModelProperty("成立时间")
   private LocalDate establishDate;
   @ApiModelProperty("职工人数")
   private Integer workersNum;
   @ApiModelProperty("目前服务的客户数量")
   private Integer clientNum;
   @ApiModelProperty("去年营业收入(万元)")
   private BigDecimal lastYearOperatingIncome;
   @ApiModelProperty("前年营业收入(万元)")
   private BigDecimal beforeYearOperatingIncome;
   @ApiModelProperty("经营范围(工商信息)")
   private String businessScope;
   @ApiModelProperty("前五大客户")
   private String topFiveClient;
   @ApiModelProperty("前五大供应商")
   private String topFiveSupplier;
   @ApiModelProperty("公司简介")
   private String companyIntroduction;
   @ApiModelProperty("主要优势")
   private String mainAdvantage;
   @ApiModelProperty("是否接收通知(1是2否)")
   private Integer ifReceiveNotice;
   @ApiModelProperty("流程通知方式(1不通知2短信3公众号)")
   private Integer noticeStyle;
   @ApiModelProperty("供应商用户id")
   private Long supplierUserId;
   @ApiModelProperty("资质集合")
   @Size(
   min = 1,
   message = "主要资质不能为空"
) List<DrpSupplierQualificationSaveDTO> mainQualificationList;
   @ApiModelProperty("资质集合")
   List<DrpSupplierQualificationSaveDTO> otherQualificationList;
   @ApiModelProperty("送货人集合")
   private List<DrpSupplierDeliverAddDTO> deliverVOList;
   @ApiModelProperty("身份证正")
   private String idCardImgZ;
   @ApiModelProperty("身份证反")
   private String idCardImgF;
   @ApiModelProperty("附件")
   private List<DrpContractAttachmentDTO> attachmentList;

   public void setIdCardImgZ(String idCardImgZ) {
      this.idCardImgZ = SysUtil.getCutPath(idCardImgZ);
   }

   public void setIdCardImgF(String idCardImgF) {
      this.idCardImgF = SysUtil.getCutPath(idCardImgF);
   }

   public String getSupplierName() {
      return this.supplierName;
   }

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

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

   public String getLinkman() {
      return this.linkman;
   }

   public String getLinkmanNumber() {
      return this.linkmanNumber;
   }

   public String getEmail() {
      return this.email;
   }

   public String getWechat() {
      return this.wechat;
   }

   public String getOpeningBank() {
      return this.openingBank;
   }

   public String getBankAccount() {
      return this.bankAccount;
   }

   public String getSupplierSimpleName() {
      return this.supplierSimpleName;
   }

   public String getTelephone() {
      return this.telephone;
   }

   public String getCompanyWeb() {
      return this.companyWeb;
   }

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

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

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

   public Integer getTaxRate() {
      return this.taxRate;
   }

   public Integer getPaymentDays() {
      return this.paymentDays;
   }

   public String getStandbyLinkman() {
      return this.standbyLinkman;
   }

   public String getStandbyPhone() {
      return this.standbyPhone;
   }

   public String getStandbyWechat() {
      return this.standbyWechat;
   }

   public String getStandbyEmail() {
      return this.standbyEmail;
   }

   public List<Long> getCategoryIdList() {
      return this.categoryIdList;
   }

   public BigDecimal getRegistFund() {
      return this.registFund;
   }

   public LocalDate getEstablishDate() {
      return this.establishDate;
   }

   public Integer getWorkersNum() {
      return this.workersNum;
   }

   public Integer getClientNum() {
      return this.clientNum;
   }

   public BigDecimal getLastYearOperatingIncome() {
      return this.lastYearOperatingIncome;
   }

   public BigDecimal getBeforeYearOperatingIncome() {
      return this.beforeYearOperatingIncome;
   }

   public String getBusinessScope() {
      return this.businessScope;
   }

   public String getTopFiveClient() {
      return this.topFiveClient;
   }

   public String getTopFiveSupplier() {
      return this.topFiveSupplier;
   }

   public String getCompanyIntroduction() {
      return this.companyIntroduction;
   }

   public String getMainAdvantage() {
      return this.mainAdvantage;
   }

   public Integer getIfReceiveNotice() {
      return this.ifReceiveNotice;
   }

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

   public Long getSupplierUserId() {
      return this.supplierUserId;
   }

   public List<DrpSupplierQualificationSaveDTO> getMainQualificationList() {
      return this.mainQualificationList;
   }

   public List<DrpSupplierQualificationSaveDTO> getOtherQualificationList() {
      return this.otherQualificationList;
   }

   public List<DrpSupplierDeliverAddDTO> getDeliverVOList() {
      return this.deliverVOList;
   }

   public String getIdCardImgZ() {
      return this.idCardImgZ;
   }

   public String getIdCardImgF() {
      return this.idCardImgF;
   }

   public List<DrpContractAttachmentDTO> getAttachmentList() {
      return this.attachmentList;
   }

   public void setSupplierName(final String supplierName) {
      this.supplierName = supplierName;
   }

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

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

   public void setLinkman(final String linkman) {
      this.linkman = linkman;
   }

   public void setLinkmanNumber(final String linkmanNumber) {
      this.linkmanNumber = linkmanNumber;
   }

   public void setEmail(final String email) {
      this.email = email;
   }

   public void setWechat(final String wechat) {
      this.wechat = wechat;
   }

   public void setOpeningBank(final String openingBank) {
      this.openingBank = openingBank;
   }

   public void setBankAccount(final String bankAccount) {
      this.bankAccount = bankAccount;
   }

   public void setSupplierSimpleName(final String supplierSimpleName) {
      this.supplierSimpleName = supplierSimpleName;
   }

   public void setTelephone(final String telephone) {
      this.telephone = telephone;
   }

   public void setCompanyWeb(final String companyWeb) {
      this.companyWeb = companyWeb;
   }

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

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

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

   public void setTaxRate(final Integer taxRate) {
      this.taxRate = taxRate;
   }

   public void setPaymentDays(final Integer paymentDays) {
      this.paymentDays = paymentDays;
   }

   public void setStandbyLinkman(final String standbyLinkman) {
      this.standbyLinkman = standbyLinkman;
   }

   public void setStandbyPhone(final String standbyPhone) {
      this.standbyPhone = standbyPhone;
   }

   public void setStandbyWechat(final String standbyWechat) {
      this.standbyWechat = standbyWechat;
   }

   public void setStandbyEmail(final String standbyEmail) {
      this.standbyEmail = standbyEmail;
   }

   public void setCategoryIdList(final List<Long> categoryIdList) {
      this.categoryIdList = categoryIdList;
   }

   public void setRegistFund(final BigDecimal registFund) {
      this.registFund = registFund;
   }

   public void setEstablishDate(final LocalDate establishDate) {
      this.establishDate = establishDate;
   }

   public void setWorkersNum(final Integer workersNum) {
      this.workersNum = workersNum;
   }

   public void setClientNum(final Integer clientNum) {
      this.clientNum = clientNum;
   }

   public void setLastYearOperatingIncome(final BigDecimal lastYearOperatingIncome) {
      this.lastYearOperatingIncome = lastYearOperatingIncome;
   }

   public void setBeforeYearOperatingIncome(final BigDecimal beforeYearOperatingIncome) {
      this.beforeYearOperatingIncome = beforeYearOperatingIncome;
   }

   public void setBusinessScope(final String businessScope) {
      this.businessScope = businessScope;
   }

   public void setTopFiveClient(final String topFiveClient) {
      this.topFiveClient = topFiveClient;
   }

   public void setTopFiveSupplier(final String topFiveSupplier) {
      this.topFiveSupplier = topFiveSupplier;
   }

   public void setCompanyIntroduction(final String companyIntroduction) {
      this.companyIntroduction = companyIntroduction;
   }

   public void setMainAdvantage(final String mainAdvantage) {
      this.mainAdvantage = mainAdvantage;
   }

   public void setIfReceiveNotice(final Integer ifReceiveNotice) {
      this.ifReceiveNotice = ifReceiveNotice;
   }

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

   public void setSupplierUserId(final Long supplierUserId) {
      this.supplierUserId = supplierUserId;
   }

   public void setMainQualificationList(final List<DrpSupplierQualificationSaveDTO> mainQualificationList) {
      this.mainQualificationList = mainQualificationList;
   }

   public void setOtherQualificationList(final List<DrpSupplierQualificationSaveDTO> otherQualificationList) {
      this.otherQualificationList = otherQualificationList;
   }

   public void setDeliverVOList(final List<DrpSupplierDeliverAddDTO> deliverVOList) {
      this.deliverVOList = deliverVOList;
   }

   public void setAttachmentList(final List<DrpContractAttachmentDTO> attachmentList) {
      this.attachmentList = attachmentList;
   }


   public String toString() {
      String var10000 = this.getSupplierName();
      return "DrpSupplierAddDTO(supplierName=" + var10000 + ", areaId=" + this.getAreaId() + ", address=" + this.getAddress() + ", linkman=" + this.getLinkman() + ", linkmanNumber=" + this.getLinkmanNumber() + ", email=" + this.getEmail() + ", wechat=" + this.getWechat() + ", openingBank=" + this.getOpeningBank() + ", bankAccount=" + this.getBankAccount() + ", supplierSimpleName=" + this.getSupplierSimpleName() + ", telephone=" + this.getTelephone() + ", companyWeb=" + this.getCompanyWeb() + ", regionProvince=" + this.getRegionProvince() + ", regionCity=" + this.getRegionCity() + ", regionDistrict=" + this.getRegionDistrict() + ", taxRate=" + this.getTaxRate() + ", paymentDays=" + this.getPaymentDays() + ", standbyLinkman=" + this.getStandbyLinkman() + ", standbyPhone=" + this.getStandbyPhone() + ", standbyWechat=" + this.getStandbyWechat() + ", standbyEmail=" + this.getStandbyEmail() + ", categoryIdList=" + String.valueOf(this.getCategoryIdList()) + ", registFund=" + String.valueOf(this.getRegistFund()) + ", establishDate=" + String.valueOf(this.getEstablishDate()) + ", workersNum=" + this.getWorkersNum() + ", clientNum=" + this.getClientNum() + ", lastYearOperatingIncome=" + String.valueOf(this.getLastYearOperatingIncome()) + ", beforeYearOperatingIncome=" + String.valueOf(this.getBeforeYearOperatingIncome()) + ", businessScope=" + this.getBusinessScope() + ", topFiveClient=" + this.getTopFiveClient() + ", topFiveSupplier=" + this.getTopFiveSupplier() + ", companyIntroduction=" + this.getCompanyIntroduction() + ", mainAdvantage=" + this.getMainAdvantage() + ", ifReceiveNotice=" + this.getIfReceiveNotice() + ", noticeStyle=" + this.getNoticeStyle() + ", supplierUserId=" + this.getSupplierUserId() + ", mainQualificationList=" + String.valueOf(this.getMainQualificationList()) + ", otherQualificationList=" + String.valueOf(this.getOtherQualificationList()) + ", deliverVOList=" + String.valueOf(this.getDeliverVOList()) + ", idCardImgZ=" + this.getIdCardImgZ() + ", idCardImgF=" + this.getIdCardImgF() + ", attachmentList=" + String.valueOf(this.getAttachmentList()) + ")";
   }
}
