From 4667dc8680a1bff172ce8151f9715b92d4159b88 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 17 Apr 2024 16:39:32 +0800 Subject: [PATCH] 代币充值 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java | 38 ++++++++++++++++++++++++++++++++++++++ 1 files changed, 38 insertions(+), 0 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java index 5c531f5..5c8dc0e 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallMemberServiceImpl.java @@ -66,6 +66,7 @@ private final MallProductBuyRecordMapper mallProductBuyRecordMapper; private final MallProductBuyMapper mallProductBuyMapper; private final MallMemberSpeakMapper mallMemberSpeakMapper; + private final MallMemberChargeMapper mallMemberChargeMapper; @Value("${spring.profiles.active}") @@ -341,6 +342,12 @@ DataDictionaryEnum.FCM_INSIDE_NFT_PERCENT.getCode() ); mallMemberVo.setInsideNFTPercent(insideNFTPercentDic.getValue()); + + DataDictionaryCustom chargeAddressDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.CHARGE_ADDRESS.getType(), + DataDictionaryEnum.CHARGE_ADDRESS.getCode() + ); + mallMemberVo.setChargeAddress(chargeAddressDic.getValue()); return new FebsResponse().success().data(mallMemberVo); } @@ -1023,6 +1030,37 @@ return new FebsResponse().success().data(pages); } + @Override + public FebsResponse chargeBalance(ApiChargeBalanceDto apiChargeBalanceDto) { + Long memberId = LoginUserUtil.getLoginUser().getId(); + MallMember mallMember = this.baseMapper.selectById(memberId); + BigDecimal amount = apiChargeBalanceDto.getAmount(); + DataDictionaryCustom chargeAmountDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.CHARGE_AMOUNT.getType(), + DataDictionaryEnum.CHARGE_AMOUNT.getCode() + ); + BigDecimal chargeAmount = new BigDecimal(chargeAmountDic.getValue()).setScale(2,BigDecimal.ROUND_DOWN); + if(chargeAmount.compareTo(amount) > 0){ + throw new FebsException("充值金额需要大于"+chargeAmount); + } + + if (StrUtil.isBlank(mallMember.getTradePassword())) { + throw new FebsException("请设置交易密码"); + } + + if (!mallMember.getTradePassword().equals(SecureUtil.md5(apiChargeBalanceDto.getTradePassword()))) { + throw new FebsException("交易密码错误"); + } + MallMemberCharge mallMemberCharge = new MallMemberCharge(); + mallMemberCharge.setMemberId(memberId); + mallMemberCharge.setAmount(chargeAmount); + mallMemberCharge.setState(1); + mallMemberChargeMapper.insert(mallMemberCharge); + + + return new FebsResponse().success().message("操作成功"); + } + // public static void main(String[] args) { // Set<String> objectsAccount = new HashSet<>(); // Set<String> objects = new HashSet<>(); -- Gitblit v1.9.1