From 15a6f5b0a38f0cd19c777c75c3fc4ff498fbc8dc Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 18 Aug 2023 10:17:58 +0800
Subject: [PATCH] 赠送积分更新状态
---
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java | 73 ++++++++++++++++++++++--------------
1 files changed, 45 insertions(+), 28 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 9aaad1a..f098a85 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)
@@ -241,7 +242,7 @@
@Override
public void addMemberScan(String str) {
- String[] split = StrUtil.split(str, "-");
+ String[] split = StrUtil.split(str, "@");
String referrerId = split[0];
String openId = split[1];
MallMember mallMember = memberMapper.selectMemberByOpenId(openId);
@@ -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(
+ id,
+ amountActual,
+ MoneyFlowTypeEnum.DYNAMIC_ACHIEVE.getValue(),
+ mallOrderInfo.getOrderNo(),
+ "直推奖",
+ "直推奖",
+ mallMember.getId(),
+ 1,
+ FlowTypeEnum.BALANCE.getValue(),
+ 2);
+ }
}
}
for(MallOrderItem mallOrderItem : mallOrderItemList){
@@ -388,26 +402,26 @@
if(ObjectUtil.isEmpty(mallGoods)){
break;
}
- if(1 == mallGoods.getIsUnreal()){
+ 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());
+ 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){
@@ -459,6 +475,7 @@
mallMemberHouse.setUnuseTime(DateUtil.date().offset(DateField.HOUR_OF_DAY,48));
mallMemberHouse.setHouseName(mallGoods.getHouseName());
mallMemberHouse.setHouseAddress(mallGoods.getHouseAddress());
+ mallMemberHouse.setHousePic(mallGoods.getThumb());
mallMemberHouseMapper.insert(mallMemberHouse);
return;
}else{
--
Gitblit v1.9.1