package com.bonus.core.account.v3.dto;


import com.bonus.core.account.v3.constants.AccUpdateWalletOperateEnum;

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

public class AccWalletUpdateDTO {
   private Long custId;
   private Integer walletId;
   private BigDecimal amount;
   private AccUpdateWalletOperateEnum updateWalletOperateEnum;
   private Long orgId;
   private Integer psnType;
   private Integer tradeType;
   private Integer payChannel;
   private Integer payType;
   private String batchNum;
   private Long subTimeRuleId;
   private Integer rechargeSource;
   private Integer rechargeOperate;
   private Integer operateSource;
   private Integer withdrawSource;
   private Long originTradeId;
   private Long leOrdNo;
   private String thirdTradeNo;
   private String crby;
   private String remark;
   private LocalDateTime tradeTime;
   private Long batchImportId;
   private LocalDateTime validityTime;

   public static AccWalletUpdateDTOBuilder builder() {
      return new AccWalletUpdateDTOBuilder();
   }

   public Long getCustId() {
      return this.custId;
   }

   public Integer getWalletId() {
      return this.walletId;
   }

   public BigDecimal getAmount() {
      return this.amount;
   }

   public AccUpdateWalletOperateEnum getUpdateWalletOperateEnum() {
      return this.updateWalletOperateEnum;
   }

   public Long getOrgId() {
      return this.orgId;
   }

   public Integer getPsnType() {
      return this.psnType;
   }

   public Integer getTradeType() {
      return this.tradeType;
   }

   public Integer getPayChannel() {
      return this.payChannel;
   }

   public Integer getPayType() {
      return this.payType;
   }

   public String getBatchNum() {
      return this.batchNum;
   }

   public Long getSubTimeRuleId() {
      return this.subTimeRuleId;
   }

   public Integer getRechargeSource() {
      return this.rechargeSource;
   }

   public Integer getRechargeOperate() {
      return this.rechargeOperate;
   }

   public Integer getOperateSource() {
      return this.operateSource;
   }

   public Integer getWithdrawSource() {
      return this.withdrawSource;
   }

   public Long getOriginTradeId() {
      return this.originTradeId;
   }

   public Long getLeOrdNo() {
      return this.leOrdNo;
   }

   public String getThirdTradeNo() {
      return this.thirdTradeNo;
   }

   public String getCrby() {
      return this.crby;
   }

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

   public LocalDateTime getTradeTime() {
      return this.tradeTime;
   }

   public Long getBatchImportId() {
      return this.batchImportId;
   }

   public LocalDateTime getValidityTime() {
      return this.validityTime;
   }

   public void setCustId(final Long custId) {
      this.custId = custId;
   }

   public void setWalletId(final Integer walletId) {
      this.walletId = walletId;
   }

   public void setAmount(final BigDecimal amount) {
      this.amount = amount;
   }

   public void setUpdateWalletOperateEnum(final AccUpdateWalletOperateEnum updateWalletOperateEnum) {
      this.updateWalletOperateEnum = updateWalletOperateEnum;
   }

   public void setOrgId(final Long orgId) {
      this.orgId = orgId;
   }

   public void setPsnType(final Integer psnType) {
      this.psnType = psnType;
   }

   public void setTradeType(final Integer tradeType) {
      this.tradeType = tradeType;
   }

   public void setPayChannel(final Integer payChannel) {
      this.payChannel = payChannel;
   }

   public void setPayType(final Integer payType) {
      this.payType = payType;
   }

   public void setBatchNum(final String batchNum) {
      this.batchNum = batchNum;
   }

   public void setSubTimeRuleId(final Long subTimeRuleId) {
      this.subTimeRuleId = subTimeRuleId;
   }

   public void setRechargeSource(final Integer rechargeSource) {
      this.rechargeSource = rechargeSource;
   }

   public void setRechargeOperate(final Integer rechargeOperate) {
      this.rechargeOperate = rechargeOperate;
   }

   public void setOperateSource(final Integer operateSource) {
      this.operateSource = operateSource;
   }

   public void setWithdrawSource(final Integer withdrawSource) {
      this.withdrawSource = withdrawSource;
   }

   public void setOriginTradeId(final Long originTradeId) {
      this.originTradeId = originTradeId;
   }

   public void setLeOrdNo(final Long leOrdNo) {
      this.leOrdNo = leOrdNo;
   }

   public void setThirdTradeNo(final String thirdTradeNo) {
      this.thirdTradeNo = thirdTradeNo;
   }

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

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

   public void setTradeTime(final LocalDateTime tradeTime) {
      this.tradeTime = tradeTime;
   }

   public void setBatchImportId(final Long batchImportId) {
      this.batchImportId = batchImportId;
   }

   public void setValidityTime(final LocalDateTime validityTime) {
      this.validityTime = validityTime;
   }

   public AccWalletUpdateDTO(final Long custId, final Integer walletId, final BigDecimal amount, final AccUpdateWalletOperateEnum updateWalletOperateEnum, final Long orgId, final Integer psnType, final Integer tradeType, final Integer payChannel, final Integer payType, final String batchNum, final Long subTimeRuleId, final Integer rechargeSource, final Integer rechargeOperate, final Integer operateSource, final Integer withdrawSource, final Long originTradeId, final Long leOrdNo, final String thirdTradeNo, final String crby, final String remark, final LocalDateTime tradeTime, final Long batchImportId, final LocalDateTime validityTime) {
      this.custId = custId;
      this.walletId = walletId;
      this.amount = amount;
      this.updateWalletOperateEnum = updateWalletOperateEnum;
      this.orgId = orgId;
      this.psnType = psnType;
      this.tradeType = tradeType;
      this.payChannel = payChannel;
      this.payType = payType;
      this.batchNum = batchNum;
      this.subTimeRuleId = subTimeRuleId;
      this.rechargeSource = rechargeSource;
      this.rechargeOperate = rechargeOperate;
      this.operateSource = operateSource;
      this.withdrawSource = withdrawSource;
      this.originTradeId = originTradeId;
      this.leOrdNo = leOrdNo;
      this.thirdTradeNo = thirdTradeNo;
      this.crby = crby;
      this.remark = remark;
      this.tradeTime = tradeTime;
      this.batchImportId = batchImportId;
      this.validityTime = validityTime;
   }

   public AccWalletUpdateDTO() {
   }

   public static class AccWalletUpdateDTOBuilder {
      private Long custId;
      private Integer walletId;
      private BigDecimal amount;
      private AccUpdateWalletOperateEnum updateWalletOperateEnum;
      private Long orgId;
      private Integer psnType;
      private Integer tradeType;
      private Integer payChannel;
      private Integer payType;
      private String batchNum;
      private Long subTimeRuleId;
      private Integer rechargeSource;
      private Integer rechargeOperate;
      private Integer operateSource;
      private Integer withdrawSource;
      private Long originTradeId;
      private Long leOrdNo;
      private String thirdTradeNo;
      private String crby;
      private String remark;
      private LocalDateTime tradeTime;
      private Long batchImportId;
      private LocalDateTime validityTime;

      AccWalletUpdateDTOBuilder() {
      }

      public AccWalletUpdateDTOBuilder custId(final Long custId) {
         this.custId = custId;
         return this;
      }

      public AccWalletUpdateDTOBuilder walletId(final Integer walletId) {
         this.walletId = walletId;
         return this;
      }

      public AccWalletUpdateDTOBuilder amount(final BigDecimal amount) {
         this.amount = amount;
         return this;
      }

      public AccWalletUpdateDTOBuilder updateWalletOperateEnum(final AccUpdateWalletOperateEnum updateWalletOperateEnum) {
         this.updateWalletOperateEnum = updateWalletOperateEnum;
         return this;
      }

      public AccWalletUpdateDTOBuilder orgId(final Long orgId) {
         this.orgId = orgId;
         return this;
      }

      public AccWalletUpdateDTOBuilder psnType(final Integer psnType) {
         this.psnType = psnType;
         return this;
      }

      public AccWalletUpdateDTOBuilder tradeType(final Integer tradeType) {
         this.tradeType = tradeType;
         return this;
      }

      public AccWalletUpdateDTOBuilder payChannel(final Integer payChannel) {
         this.payChannel = payChannel;
         return this;
      }

      public AccWalletUpdateDTOBuilder payType(final Integer payType) {
         this.payType = payType;
         return this;
      }

      public AccWalletUpdateDTOBuilder batchNum(final String batchNum) {
         this.batchNum = batchNum;
         return this;
      }

      public AccWalletUpdateDTOBuilder subTimeRuleId(final Long subTimeRuleId) {
         this.subTimeRuleId = subTimeRuleId;
         return this;
      }

      public AccWalletUpdateDTOBuilder rechargeSource(final Integer rechargeSource) {
         this.rechargeSource = rechargeSource;
         return this;
      }

      public AccWalletUpdateDTOBuilder rechargeOperate(final Integer rechargeOperate) {
         this.rechargeOperate = rechargeOperate;
         return this;
      }

      public AccWalletUpdateDTOBuilder operateSource(final Integer operateSource) {
         this.operateSource = operateSource;
         return this;
      }

      public AccWalletUpdateDTOBuilder withdrawSource(final Integer withdrawSource) {
         this.withdrawSource = withdrawSource;
         return this;
      }

      public AccWalletUpdateDTOBuilder originTradeId(final Long originTradeId) {
         this.originTradeId = originTradeId;
         return this;
      }

      public AccWalletUpdateDTOBuilder leOrdNo(final Long leOrdNo) {
         this.leOrdNo = leOrdNo;
         return this;
      }

      public AccWalletUpdateDTOBuilder thirdTradeNo(final String thirdTradeNo) {
         this.thirdTradeNo = thirdTradeNo;
         return this;
      }

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

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

      public AccWalletUpdateDTOBuilder tradeTime(final LocalDateTime tradeTime) {
         this.tradeTime = tradeTime;
         return this;
      }

      public AccWalletUpdateDTOBuilder batchImportId(final Long batchImportId) {
         this.batchImportId = batchImportId;
         return this;
      }

      public AccWalletUpdateDTOBuilder validityTime(final LocalDateTime validityTime) {
         this.validityTime = validityTime;
         return this;
      }

      public AccWalletUpdateDTO build() {
         return new AccWalletUpdateDTO(this.custId, this.walletId, this.amount, this.updateWalletOperateEnum, this.orgId, this.psnType, this.tradeType, this.payChannel, this.payType, this.batchNum, this.subTimeRuleId, this.rechargeSource, this.rechargeOperate, this.operateSource, this.withdrawSource, this.originTradeId, this.leOrdNo, this.thirdTradeNo, this.crby, this.remark, this.tradeTime, this.batchImportId, this.validityTime);
      }

      public String toString() {
         Long var10000 = this.custId;
         return "AccWalletUpdateDTO.AccWalletUpdateDTOBuilder(custId=" + var10000 + ", walletId=" + this.walletId + ", amount=" + String.valueOf(this.amount) + ", updateWalletOperateEnum=" + String.valueOf(this.updateWalletOperateEnum) + ", orgId=" + this.orgId + ", psnType=" + this.psnType + ", tradeType=" + this.tradeType + ", payChannel=" + this.payChannel + ", payType=" + this.payType + ", batchNum=" + this.batchNum + ", subTimeRuleId=" + this.subTimeRuleId + ", rechargeSource=" + this.rechargeSource + ", rechargeOperate=" + this.rechargeOperate + ", operateSource=" + this.operateSource + ", withdrawSource=" + this.withdrawSource + ", originTradeId=" + this.originTradeId + ", leOrdNo=" + this.leOrdNo + ", thirdTradeNo=" + this.thirdTradeNo + ", crby=" + this.crby + ", remark=" + this.remark + ", tradeTime=" + String.valueOf(this.tradeTime) + ", batchImportId=" + this.batchImportId + ", validityTime=" + String.valueOf(this.validityTime) + ")";
      }
   }
}
