From 7187a0f496f9b55f67f2be9bc3a111d3a1bc2d0b Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Fri, 03 Jan 2025 15:41:43 +0800
Subject: [PATCH] feat(mall): 实现会员升级时自动发放节点币功能
---
src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java | 23 +++++++++++++++++++++++
1 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java
index 9912a03..b1ee2da 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/RunVipServiceImpl.java
@@ -447,6 +447,7 @@
apiGrowInfoVo.setLevelNow(runVipNow.getVipCode());
apiGrowInfoVo.setAmountNow(runVipNow.getPresentPrice());
+
//获取runVips中的orderNumber为runVipNow.getOrderNumber() + 1的那个元素
RunVip runVipNext = runVips.stream().filter(runVip -> runVip.getOrderNumber() == runVipNow.getOrderNumber() + 1).findFirst().orElse(null);
if(runVipNext != null){
@@ -668,4 +669,26 @@
mallChargeMapper.insert(mallCharge);
return new FebsResponse().success().data("操作成功");
}
+
+ @Override
+ public FebsResponse reduceAmount() {
+ Long memberId = LoginUserUtil.getLoginUser().getId();
+ ApiReduceAmountVo apiReduceAmountVo = new ApiReduceAmountVo();
+ MallMember mallMember = mallMemberMapper.selectById(memberId);
+ //减免价格
+ RunVip runVip = this.baseMapper.selectOne(new LambdaQueryWrapper<RunVip>().eq(RunVip::getVipCode, mallMember.getLevel()));
+ BigDecimal reduceAmount = runVip.getPresentPrice();
+ RunVipGrow runVipGrow = runVipGrowMapper.selectList(
+ new LambdaQueryWrapper<RunVipGrow>()
+ .eq(RunVipGrow::getMemberId, memberId)
+ .eq(RunVipGrow::getLevelNow, mallMember.getLevel())
+ .orderByDesc(RunVipGrow::getId)
+ ).stream().findFirst().orElse(null);
+ if(runVipGrow != null){
+ BigDecimal amountNow = runVipGrow.getAmountNow();
+ reduceAmount = reduceAmount.add(amountNow);
+ }
+ apiReduceAmountVo.setReduceAmount(reduceAmount);
+ return new FebsResponse().success().data(apiReduceAmountVo);
+ }
}
--
Gitblit v1.9.1