From 836e019db92b9871cba9d440c8159b35f79e1726 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Thu, 30 Mar 2023 09:32:42 +0800 Subject: [PATCH] 根据补贴记录,减少用户贡献值 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 34 +++++++++++++++++++++++++++++----- 1 files changed, 29 insertions(+), 5 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java index b22cb17..12fa502 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java @@ -461,9 +461,14 @@ BigDecimal star = (mallGoods.getStar()==null ? BigDecimal.ZERO : mallGoods.getStar()) .multiply(new BigDecimal(orderItem.getCnt())); starSum = starSum.add(star); +// scoreSum = scoreSum.add( +// new BigDecimal(mallGoods.getPresentPrice()) +// .multiply(new BigDecimal(3)) +// .multiply(new BigDecimal(orderItem.getCnt())) +// .abs() +// .setScale(2,BigDecimal.ROUND_DOWN)); scoreSum = scoreSum.add( new BigDecimal(mallGoods.getPresentPrice()) - .multiply(new BigDecimal(3)) .multiply(new BigDecimal(orderItem.getCnt())) .abs() .setScale(2,BigDecimal.ROUND_DOWN)); @@ -491,7 +496,8 @@ starSum, MoneyFlowTypeEnum.STAR.getValue(), orderInfo.getOrderNo(), - FlowTypeEnum.STAR.getValue()); + FlowTypeEnum.STAR.getValue(), + 2); } if(starGet.compareTo(star) > 0){ BigDecimal subtract = starGet.subtract(star); @@ -504,7 +510,8 @@ starSum, MoneyFlowTypeEnum.STAR.getValue(), orderInfo.getOrderNo(), - FlowTypeEnum.STAR.getValue()); + FlowTypeEnum.STAR.getValue(), + 2); } }else{ mallMemberWalletMapper.addStarByMemberId(starSum.intValue(), memberId); @@ -513,7 +520,8 @@ starSum, MoneyFlowTypeEnum.STAR.getValue(), orderInfo.getOrderNo(), - FlowTypeEnum.STAR.getValue()); + FlowTypeEnum.STAR.getValue(), + 2); } } } @@ -521,13 +529,29 @@ * 增加补贴额度 */ if (scoreSum.compareTo(BigDecimal.ZERO) > 0) { + MallMember mallMember = memberMapper.selectById(memberId); + if(MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) >= 5){ + scoreSum = scoreSum.multiply(new BigDecimal(3)); + } + if(MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) >= 3 + &&MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) < 5){ + scoreSum = scoreSum.multiply(new BigDecimal(2.8)); + } + if(MemberLevelEnum.SECOND_LEVEL.getLevelCode(mallMember.getLevel()) < 3){ + scoreSum = scoreSum.multiply(new BigDecimal(2.5)); + } memberWalletService.add(scoreSum, memberId, "totalScore"); mallMoneyFlowService.addMoneyFlow( memberId, scoreSum, MoneyFlowTypeEnum.TOTAL_SCORE.getValue(), orderInfo.getOrderNo(), - FlowTypeEnum.TOTAL_SCORE.getValue()); + "", + scoreSum.toString(), + memberId, + 1, + FlowTypeEnum.TOTAL_SCORE.getValue(), + 2); } } -- Gitblit v1.9.1