package com.bonus.core.account.v3.metadata.model;

import cn.hutool.core.text.CharSequenceUtil;
import cn.hutool.core.util.StrUtil;
import com.bonus.core.account.v3.metadata.enums.AccWalletIdEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

@ApiModel("账户配置模型")
public class AccMetadataModel {
   @ApiModelProperty("账户支付顺序(1,2,4)")
   private String accPayOrder;
   @ApiModelProperty("是否启用第三方充值 默认否")
   private String ifUseThirdRecharge;
   @ApiModelProperty("是否查询第三方余额 默认否")
   private String ifUseThirdAccBal;
   @ApiModelProperty("账户个人钱包-最低余额限制 默认0")
   private String minBalanceLimit;
   @ApiModelProperty("账户补贴钱包-最低余额限制 默认0")
   private String minSubBalanceLimit;
   @ApiModelProperty("账户红包钱包-最低余额限制 默认0")
   private String minRedBalanceLimit;
   @ApiModelProperty("移动端取款是否审批 默认否 1是 2否")
   private String ifApproveMobileWithdraw;
   @ApiModelProperty("移动端是否支持取款 默认否")
   private String ifSupportMobileWithdraw;
   @ApiModelProperty("离线支付默认使用钱包(个人钱包)")
   private String offlineWalletPay;

   public String getAccPayOrder() {
      return StrUtil.isBlank(this.accPayOrder) ? AccWalletIdEnum.getAllWalletId() : this.accPayOrder;
   }

   public String getOfflineWalletPay() {
      return CharSequenceUtil.isBlank(this.offlineWalletPay) ? String.valueOf(AccWalletIdEnum.WALLET.getKey()) : this.offlineWalletPay;
   }

   public String getIfUseThirdRecharge() {
      return this.ifUseThirdRecharge;
   }

   public String getIfUseThirdAccBal() {
      return this.ifUseThirdAccBal;
   }

   public String getMinBalanceLimit() {
      return this.minBalanceLimit;
   }

   public String getMinSubBalanceLimit() {
      return this.minSubBalanceLimit;
   }

   public String getMinRedBalanceLimit() {
      return this.minRedBalanceLimit;
   }

   public String getIfApproveMobileWithdraw() {
      return this.ifApproveMobileWithdraw;
   }

   public String getIfSupportMobileWithdraw() {
      return this.ifSupportMobileWithdraw;
   }

   public void setAccPayOrder(final String accPayOrder) {
      this.accPayOrder = accPayOrder;
   }

   public void setIfUseThirdRecharge(final String ifUseThirdRecharge) {
      this.ifUseThirdRecharge = ifUseThirdRecharge;
   }

   public void setIfUseThirdAccBal(final String ifUseThirdAccBal) {
      this.ifUseThirdAccBal = ifUseThirdAccBal;
   }

   public void setMinBalanceLimit(final String minBalanceLimit) {
      this.minBalanceLimit = minBalanceLimit;
   }

   public void setMinSubBalanceLimit(final String minSubBalanceLimit) {
      this.minSubBalanceLimit = minSubBalanceLimit;
   }

   public void setMinRedBalanceLimit(final String minRedBalanceLimit) {
      this.minRedBalanceLimit = minRedBalanceLimit;
   }

   public void setIfApproveMobileWithdraw(final String ifApproveMobileWithdraw) {
      this.ifApproveMobileWithdraw = ifApproveMobileWithdraw;
   }

   public void setIfSupportMobileWithdraw(final String ifSupportMobileWithdraw) {
      this.ifSupportMobileWithdraw = ifSupportMobileWithdraw;
   }

   public void setOfflineWalletPay(final String offlineWalletPay) {
      this.offlineWalletPay = offlineWalletPay;
   }
}
