From 1bb96bab1185f2e1aa2f468266512ee0beb83286 Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 12 Feb 2025 10:10:21 +0800 Subject: [PATCH] feat(mall): 实现 USDT 充值功能 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 41 ++++++++++++++++++++++++++++++++--------- 1 files changed, 32 insertions(+), 9 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java index 4596450..866d039 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java @@ -1,15 +1,11 @@ package cc.mrbird.febs.mall.service.impl; -import cc.mrbird.febs.common.enumerates.AgentLevelEnum; -import cc.mrbird.febs.common.enumerates.RunVipDataDictionaryEnum; -import cc.mrbird.febs.common.enumerates.YesOrNoEnum; +import cc.mrbird.febs.common.enumerates.*; +import cc.mrbird.febs.common.utils.MallUtils; import cc.mrbird.febs.mall.dto.ApiMemberChargeFailDto; import cc.mrbird.febs.mall.entity.*; import cc.mrbird.febs.mall.mapper.*; -import cc.mrbird.febs.mall.service.AsyncService; -import cc.mrbird.febs.mall.service.IAgentService; -import cc.mrbird.febs.mall.service.IApiMallMemberService; -import cc.mrbird.febs.mall.service.IApiMallMemberWalletService; +import cc.mrbird.febs.mall.service.*; import cc.mrbird.febs.rabbit.producter.AgentProducer; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.date.DateUtil; @@ -46,6 +42,7 @@ private final RunNodeSetMapper runNodeSetMapper; private final AsyncService asyncService; private final RunVipGrowMapper runVipGrowMapper; + private final IMallMoneyFlowService mallMoneyFlowService; @Override @Transactional(rollbackFor = Exception.class) @@ -350,13 +347,15 @@ RunVip runVipNow = runVipMap.get(mallMember.getLevel()); RunVip runVipNext = runVips.stream().filter(runVip -> runVip.getOrderNumber() == runVipNow.getOrderNumber() + 1).findFirst().orElse(null); if(null != runVipNext){ + BigDecimal add = runVipNow.getPresentPrice().add(amount); + runVipGrow = new RunVipGrow(); runVipGrow.setMemberId(memberId); runVipGrow.setLevelNow(mallMember.getLevel()); runVipGrow.setLevelNext(runVipNext.getVipCode()); runVipGrow.setAmountAll(runVipNext.getPresentPrice()); - runVipGrow.setAmount(amount); - runVipGrow.setAmountNow(amount); + runVipGrow.setAmount(add); + runVipGrow.setAmountNow(add); runVipGrowMapper.insert(runVipGrow); } } @@ -397,4 +396,28 @@ MallMember graMember = mallMemberMapper.selectInfoByInviteId(parentMember.getReferrerId()); NodeUp(graMember.getId(),directCnt,teamCnt,achieveCnt); } + + @Override + public void chargeSuccessMsg(Long chargeId) { + + MallCharge mallCharge = mallChargeMapper.selectById(chargeId); + if(null == mallCharge){ + return; + } + Long memberId = mallCharge.getMemberId(); + BigDecimal amount = mallCharge.getAmount(); + + walletService.addCommission(amount, memberId); + String orderNo = MallUtils.getOrderNum("C"); + mallMoneyFlowService.runVipMoneyFlowAdd( + memberId, + memberId, + orderNo, + FlowTypeEnum.COMMISSION.getValue(), + RunVipMoneyFlowTypeEnum.COMMISSION_PAY_CHARGE.getValue(), + amount, + StrUtil.format(RunVipMoneyFlowTypeEnum.COMMISSION_PAY_CHARGE.getDescription(),amount), + YesOrNoEnum.YES.getValue() + ); + } } -- Gitblit v1.9.1