From f501ddfe054f23e50239dff36270fc2f56d15e7d Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Mon, 08 May 2023 17:00:55 +0800 Subject: [PATCH] 微信支付 --- src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 52 insertions(+), 4 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java b/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java index ad5ce73..70395e5 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/CommonService.java @@ -1,18 +1,19 @@ package cc.mrbird.febs.mall.service.impl; +import cc.mrbird.febs.common.enumerates.MemberLevelEnum; import cc.mrbird.febs.common.utils.AppContants; import cc.mrbird.febs.common.utils.RedisUtils; -import cc.mrbird.febs.mall.entity.AppVersion; -import cc.mrbird.febs.mall.entity.DataDictionaryCustom; -import cc.mrbird.febs.mall.mapper.AppVersionMapper; -import cc.mrbird.febs.mall.mapper.DataDictionaryCustomMapper; +import cc.mrbird.febs.mall.entity.*; +import cc.mrbird.febs.mall.mapper.*; import cc.mrbird.febs.mall.service.ICommonService; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import java.math.BigDecimal; import java.util.List; /** @@ -26,6 +27,11 @@ private final RedisUtils redisUtils; private final DataDictionaryCustomMapper dataDictionaryCustomMapper; private final AppVersionMapper appVersionMapper; + private final MallOrderInfoMapper mallOrderInfoMapper; + private final MallMemberMapper memberMapper; + private final MallGoodsMapper mallGoodsMapper; + private final MallGoodsSkuMapper mallGoodsSkuMapper; + private final MallAchieveRecordMapper mallAchieveRecordMapper; @Override public boolean verifyCode(String account, String code) { @@ -82,4 +88,46 @@ dataDictionaryCustomMapper.updateById(dic); } } + + @Override + public void addAchieveAndUpdateLevel(Long orderId,Long memberId){ + MallOrderInfo orderInfo = mallOrderInfoMapper.selectById(orderId); + MallMember member = memberMapper.selectById(memberId); + + boolean hasTc = false; + BigDecimal achieveAmount = BigDecimal.ZERO; + List<MallOrderItem> orderItems = mallOrderInfoMapper.getMallOrderItemByOrderId(orderId); + if (CollUtil.isNotEmpty(orderItems)) { + for (MallOrderItem orderItem : orderItems) { + MallGoods mallGoods = mallGoodsMapper.selectById(orderItem.getGoodsId()); + MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId()); + if (mallGoods.getIsNormal() == 2) { + hasTc = true; + achieveAmount = achieveAmount.add(sku.getPresentPrice().multiply(new BigDecimal(orderItem.getCnt()))); + } + } + } + + if (hasTc){ + if(achieveAmount.compareTo(BigDecimal.ZERO) > 0) { + // 添加业绩 + MallAchieveRecord mallAchieveRecord = new MallAchieveRecord(); + mallAchieveRecord.setMemberId(memberId); + mallAchieveRecord.setAmount(achieveAmount); + mallAchieveRecord.setAchieveTime(orderInfo.getPayTime()); + mallAchieveRecord.setOrderId(orderInfo.getId()); + mallAchieveRecord.setIsNormal(2); + mallAchieveRecord.setPayTime(orderInfo.getPayTime()); + mallAchieveRecordMapper.insert(mallAchieveRecord); + //得到三倍补助 +// BigDecimal multiply = achieveAmount.multiply(new BigDecimal(3)); +// memberWalletService.add(multiply, memberId, "commission"); + + } + if(member.getLevel().equals(MemberLevelEnum.FANS.getType())){ + member.setLevel(MemberLevelEnum.NORMAL.getType()); + memberMapper.updateById(member); + } + } + } } -- Gitblit v1.9.1