xiaoyong931011
2023-08-28 d03394c01ca1ae7f3431755c628e1bd2106dc287
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -14,6 +14,7 @@
import cc.mrbird.febs.dapp.vo.*;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.RequiredArgsConstructor;
@@ -117,6 +118,26 @@
                DataDictionaryEnum.WITHDRAW_FEE.getCode()
        );
        BigDecimal withdrawFee = new BigDecimal(withdrawFeeDic.getValue());
        //最小提现金额
        DataDictionaryCustom minWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal minWithdraw = new BigDecimal(minWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        if (minWithdraw.compareTo(withdrawDto.getAmount()) > 0) {
            throw new FebsException("最小提现金额为"+minWithdraw);
        }
        //今日最大提现金额
        DataDictionaryCustom maxWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal maxWithdraw = new BigDecimal(maxWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        BigDecimal withdrawToday = dappFundFlowDao.selectSumAmountByMemberIdAndType(member.getId(), FundFlowEnum.WITHDRAW_USDT.getCode());
        withdrawToday = withdrawToday.add(withdrawDto.getAmount());
        if (maxWithdraw.compareTo(withdrawToday) < 0) {
            throw new FebsException("今日提现最多可申请"+maxWithdraw);
        }
        //手续费
        BigDecimal feeAmount = amount.multiply(withdrawFee);
        //减少余额
@@ -798,4 +819,25 @@
        DappAccountMoneyChangeEntity dappAccountMoneyChangeEntity = dappAccountMoneyChangeDao.selectNewOneByMemberId(memberId);
        return new FebsResponse().success().data(dappAccountMoneyChangeEntity);
    }
    @Override
    public CashOutSettingVo cashOutSetting() {
        CashOutSettingVo cashOutSettingVo = new CashOutSettingVo();
        //最小提现金额
        DataDictionaryCustom minWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MIN_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal minWithdraw = new BigDecimal(minWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        cashOutSettingVo.setMinWithdraw(minWithdraw);
        //今日最大提现金额
        DataDictionaryCustom maxWithdrawDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode(
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getType(),
                DataDictionaryEnum.MAX_WITHDRAW_AMOUNT.getCode()
        );
        BigDecimal maxWithdraw = new BigDecimal(maxWithdrawDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN);
        cashOutSettingVo.setMaxWithdraw(maxWithdraw);
        return cashOutSettingVo;
    }
}