From 642a3ec9b15d7cd853845590c2a044f4970b9358 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Tue, 15 Aug 2023 18:08:14 +0800 Subject: [PATCH] 赠送积分更新状态 --- src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 68 +++++++++++++++++++++------------- 1 files changed, 42 insertions(+), 26 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 fd055b4..1129921 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 @@ -57,6 +57,7 @@ private final IMallMoneyFlowService mallMoneyFlowService; private final MallMemberClassMapper mallMemberClassMapper; private final MallMemberHouseMapper mallMemberHouseMapper; + private final MallMoneyFlowMapper mallMoneyFlowMapper; @Override @Transactional(rollbackFor = Exception.class) @@ -370,16 +371,29 @@ String referrerId = mallMember.getReferrerId(); MallMember mallMemberParent = memberMapper.selectInfoByInviteId(referrerId); Long id = mallMemberParent.getId(); - DataDictionaryCustom returnPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( - DataDictionaryEnum.MEMBER_RETURN_PERCENT.getType(), - DataDictionaryEnum.MEMBER_RETURN_PERCENT.getCode() - ); - String returnPercentStr = StrUtil.isNotEmpty(returnPercentDic.getValue()) ? "1" : returnPercentDic.getValue(); - BigDecimal returnPercent = new BigDecimal(returnPercentStr).divide(new BigDecimal(100), 2, BigDecimal.ROUND_DOWN); - BigDecimal amountActual = amountBigDecimal.multiply(returnPercent).setScale(2, BigDecimal.ROUND_DOWN); - memberWalletService.add(amountActual, id, "balance"); - mallMoneyFlowService.addMoneyFlow(id, amountActual, MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(), - mallOrderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); + + MallMoneyFlow mallMoneyFlow = mallMoneyFlowMapper.selectOneByOrderNoAndMemberIdAndRtMemberId(mallOrderInfo.getOrderNo(), memberId, id); + if(ObjectUtil.isEmpty(mallMoneyFlow)){ + DataDictionaryCustom returnPercentDic = dataDictionaryCustomMapper.selectDicDataByTypeAndCode( + DataDictionaryEnum.MEMBER_RETURN_PERCENT.getType(), + DataDictionaryEnum.MEMBER_RETURN_PERCENT.getCode() + ); + String returnPercentStr = StrUtil.isNotEmpty(returnPercentDic.getValue()) ? "1" : returnPercentDic.getValue(); + BigDecimal returnPercent = new BigDecimal(returnPercentStr).divide(new BigDecimal(100), 2, BigDecimal.ROUND_DOWN); + BigDecimal amountActual = amountBigDecimal.multiply(returnPercent).setScale(2, BigDecimal.ROUND_DOWN); + + mallMoneyFlowService.addMoneyFlow( + mallMember.getId(), + amountActual, + MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(), + mallOrderInfo.getOrderNo(), + "直推奖", + "直推奖", + id, + 1, + FlowTypeEnum.BALANCE.getValue(), + 2); + } } } for(MallOrderItem mallOrderItem : mallOrderItemList){ @@ -391,23 +405,23 @@ if(ObjectUtil.isNotEmpty(mallGoods.getIsUnreal()) && 1 == mallGoods.getIsUnreal()){ mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue()); mallOrderInfoMapper.updateById(mallOrderInfo); - } - //是否送券 1:是 2:否 - BigDecimal levelTwoPrice = mallGoods.getLevelTwoPrice(); - if(BigDecimal.ONE.compareTo(levelTwoPrice) == 0){ - MallRollPerk mallRollPerk = new MallRollPerk(); - mallRollPerk.setMemberId(memberId); - mallRollPerk.setState(1); - mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue()); - mallRollPerkMapper.insert(mallRollPerk); - } - //赠送积分 - BigDecimal levelOnePrice = mallGoods.getLevelOnePrice(); - if(BigDecimal.ZERO.compareTo(levelOnePrice) <= 0){ - memberWalletService.add(levelOnePrice, memberId, "score"); + //是否送券 1:是 2:否 + BigDecimal levelTwoPrice = mallGoods.getLevelTwoPrice(); + if(BigDecimal.ONE.compareTo(levelTwoPrice) == 0){ + MallRollPerk mallRollPerk = new MallRollPerk(); + mallRollPerk.setMemberId(memberId); + mallRollPerk.setState(1); + mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue()); + mallRollPerkMapper.insert(mallRollPerk); + } + //赠送积分 + BigDecimal levelOnePrice = mallGoods.getLevelOnePrice(); + if(BigDecimal.ZERO.compareTo(levelOnePrice) <= 0){ + memberWalletService.add(levelOnePrice, memberId, "score"); - mallMoneyFlowService.addMoneyFlow(memberId, levelOnePrice, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), - mallOrderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"赠送积分",2); + mallMoneyFlowService.addMoneyFlow(memberId, levelOnePrice, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), + mallOrderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue(),"赠送积分",2); + } } } } @@ -444,7 +458,9 @@ mallMemberClass.setOrderId(orderId); mallMemberClass.setClassName(goodsName); mallMemberClass.setClassPic(skuImage); + mallMemberClass.setClassDec(mallGoods.getGoodsIntrodution()); mallMemberClass.setClassUrl(mallGoods.getVideoUrl()); + mallMemberClass.setCreateTime(DateUtil.date()); mallMemberClassMapper.insert(mallMemberClass); return; }else if(5 == isNormal){ -- Gitblit v1.9.1