xiaoyong931011
2023-07-20 436c0695fea9a8d11c2a2f1da7abfafd834b40fb
src/main/java/cc/mrbird/febs/mall/service/impl/AgentServiceImpl.java
@@ -1,19 +1,14 @@
package cc.mrbird.febs.mall.service.impl;
import cc.mrbird.febs.common.entity.FebsResponse;
import cc.mrbird.febs.common.enumerates.AgentLevelEnum;
import cc.mrbird.febs.common.enumerates.DataDictionaryEnum;
import cc.mrbird.febs.common.enumerates.MoneyFlowTypeEnum;
import cc.mrbird.febs.common.enumerates.*;
import cc.mrbird.febs.common.exception.FebsException;
import cc.mrbird.febs.common.utils.AppContants;
import cc.mrbird.febs.common.utils.HttpCurlUtil;
import cc.mrbird.febs.common.utils.ShareCodeUtil;
import cc.mrbird.febs.mall.entity.*;
import cc.mrbird.febs.mall.mapper.*;
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.IMallAchieveService;
import cc.mrbird.febs.mall.service.*;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
@@ -56,6 +51,7 @@
    private final MallGoodsMapper mallGoodsMapper;
    private final IApiMallMemberWalletService memberWalletService;
    private final MallRollPerkMapper mallRollPerkMapper;
    private final IMallMoneyFlowService mallMoneyFlowService;
    @Override
    @Transactional(rollbackFor = Exception.class)
@@ -377,6 +373,8 @@
                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());
            }
        }
        for(MallOrderItem mallOrderItem : mallOrderItemList){
@@ -391,13 +389,18 @@
                MallRollPerk mallRollPerk = new MallRollPerk();
                mallRollPerk.setMemberId(memberId);
                mallRollPerk.setState(1);
                mallRollPerk.setRollId(Long.parseLong(mallGoods.getLevelThreePrice().toString()));
                mallRollPerk.setRollId(mallGoods.getLevelThreePrice().longValue());
                mallRollPerkMapper.insert(mallRollPerk);
                mallOrderInfo.setStatus(OrderStatusEnum.FINISH.getValue());
                mallOrderInfoMapper.updateById(mallOrderInfo);
            }
            //赠送积分
            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());
            }
        }
    }