| | |
| | | symbol = "btc"; |
| | | } else if (withdraw.getMethod().indexOf("ETH") != -1) { |
| | | symbol = "eth"; |
| | | } else if (withdraw.getMethod().indexOf("USDC") != -1) { |
| | | symbol = "usdc"; |
| | | } else { |
| | | symbol = "usdt"; |
| | | } |
| | |
| | | Withdraw withdraw = getById(id); |
| | | |
| | | if (withdraw.getStatus() == 2 ) {// 通过后不可驳回 |
| | | return; |
| | | throw new YamiShopBindException("订单已操作,请不要重复操作!"); |
| | | } |
| | | Date date = new Date(); |
| | | withdraw.setReviewTime(date); |
| | |
| | | |
| | | String symbol = ""; |
| | | if (withdraw.getMethod().indexOf("BTC") != -1) { |
| | | symbol = "btc"; |
| | | symbol = "btcusdt"; |
| | | } else if (withdraw.getMethod().indexOf("ETH") != -1) { |
| | | symbol = "eth"; |
| | | } else { |
| | | symbol = "ethusdt"; |
| | | } else if (withdraw.getMethod().indexOf("USDC") != -1) { |
| | | symbol = "usdcusdt"; |
| | | } else if (withdraw.getMethod().indexOf("USDT") != -1) { |
| | | symbol = "usdt"; |
| | | } else { |
| | | return; |
| | | } |
| | | if ("usdt".equals(symbol)) { |
| | | Wallet wallet = walletService.saveWalletByPartyId(withdraw.getUserId()); |
| | |
| | | throw new YamiShopBindException("用户资金账户不存在!"); |
| | | } |
| | | capitaltWalletService.update(new LambdaUpdateWrapper<CapitaltWallet>() |
| | | .set(CapitaltWallet::getMoney,new BigDecimal(Arith.add(capitaltWallet.getMoney().doubleValue(), amount_before))) |
| | | .set(CapitaltWallet::getMoney,new BigDecimal(Arith.add(capitaltWallet.getMoney(), withdraw.getVolume()))) |
| | | .eq(CapitaltWallet::getUserId,wallet.getUserId())); |
| | | |
| | | |
| | |
| | | } else if (channel.indexOf("ETH") != -1) { |
| | | saveApplyOtherChannel(withdraw, "ethusdt"); |
| | | return; |
| | | } else if (channel.indexOf("USDC") != -1) { |
| | | saveApplyOtherChannel(withdraw, "usdcusdt"); |
| | | return; |
| | | } |
| | | User party = userService.getById(withdraw.getUserId()); |
| | | if (Constants.SECURITY_ROLE_TEST.equals(party.getRoleName())) { |
| | |
| | | if(ObjectUtil.isEmpty(capitaltWallet)){ |
| | | throw new YamiShopBindException("The user's funds account does not exist!"); |
| | | } |
| | | capitaltWalletService.update(capitaltWallet,-withdraw.getAmount().doubleValue()); |
| | | capitaltWalletService.update(capitaltWallet,-withdraw.getVolume().doubleValue()); |
| | | |
| | | save(withdraw); |
| | | |
| | |
| | | } |
| | | String withdraw_limit = sysparaService.find("withdraw_limit_" + symbol).getSvalue(); |
| | | if (amount.doubleValue() < Double.valueOf(withdraw_limit)) { |
| | | throw new YamiShopBindException("提现不得小于限额"); |
| | | throw new YamiShopBindException("Withdrawal amount must not be less than the limit."); |
| | | } |
| | | String withdraw_limit_max = sysparaService.find("withdraw_limit_max").getSvalue(); |
| | | if (amount.doubleValue() > Double.valueOf(withdraw_limit_max)) { |
| | | throw new YamiShopBindException("提现不得大于限额"); |
| | | throw new YamiShopBindException("Withdrawal amount cannot exceed the limit."); |
| | | } |
| | | /** |
| | | * 当日提现次数是否超过 |
| | |
| | | List<Withdraw> withdraw_days = findAllByDate(withdraw.getUserId().toString()); |
| | | if (withdraw_limit_num > 0 && withdraw_days != null) { |
| | | if (withdraw_days.size() >= withdraw_limit_num) { |
| | | throw new YamiShopBindException("当日可提现次数不足"); |
| | | throw new YamiShopBindException("The number of times funds can be withdrawn on the same day is insufficient."); |
| | | } |
| | | } |
| | | /** |
| | |
| | | // |
| | | String dateString = sdf.format(date); |
| | | if (dateString.compareTo(withdraw_time[0]) < 0 || dateString.compareTo(withdraw_time[1]) > 0) { |
| | | throw new YamiShopBindException("不在可提现时间内"); |
| | | throw new YamiShopBindException("Not within the available withdrawal periodNot within the available withdrawal period"); |
| | | } |
| | | } |
| | | WithdrawFeeVo withdrawFeeVo = getFee(withdraw.getMethod(), withdraw.getAmount().doubleValue()); |