From e75b2614c89004ba604c1e4f7ec700f1f422c171 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Sat, 08 Apr 2023 17:36:19 +0800 Subject: [PATCH] 设置内转开关 --- src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java | 40 +++++++++++++++++----------------------- 1 files changed, 17 insertions(+), 23 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 9e6f74b..bc1e7d1 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 @@ -72,6 +72,7 @@ private final AgentProducer agentProducer; private final IPayService payService; private final IMallAchieveService mallAchieveService; + private final MallAchieveRecordMapper mallAchieveRecordMapper; private final UnipayService unipayService; private final MallMemberBankSignMapper mallMemberBankSignMapper; @@ -327,45 +328,38 @@ orderInfo.setPayResult("1"); boolean hasTc = false; - // 静态倍数 + BigDecimal achieveAmount = BigDecimal.ZERO; List<MallOrderItem> orderItems = this.baseMapper.getMallOrderItemByOrderId(orderInfo.getId()); if (CollUtil.isNotEmpty(orderItems)) { for (MallOrderItem orderItem : orderItems) { MallGoods mallGoods = mallGoodsMapper.selectById(orderItem.getGoodsId()); - BigDecimal score = BigDecimal.ZERO; MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId()); if (mallGoods.getIsNormal() == 2) { hasTc = true; - score = sku.getPresentPrice().multiply(mallGoods.getStaticMulti()).multiply(new BigDecimal(orderItem.getCnt())); -// BigDecimal staticMulti = mallGoods.getStaticMulti() == null ? BigDecimal.ZERO : mallGoods.getStaticMulti(); -// score = sku.getPresentPrice().multiply(staticMulti); - // 普通商品也及时结算,不再10天结算 - } else { - score = sku.getPresentPrice(); - } - - if (score.compareTo(BigDecimal.ZERO) > 0) { - memberWalletService.add(score, member.getId(), "score"); - mallMoneyFlowService.addMoneyFlow(member.getId(), score, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue()); - - // 添加业绩 - mallAchieveService.add(orderItem.getId()); + achieveAmount = achieveAmount.add(sku.getPresentPrice().multiply(new BigDecimal(orderItem.getCnt()))); } } } - // 购买套餐后,升级为普通会员 - if (hasTc) { - MallMember mallMember = memberMapper.selectById(member.getId()); - if (AgentLevelEnum.ZERO_LEVEL.name().equals(mallMember.getLevel())) { - mallMember.setLevel(AgentLevelEnum.FIRST_LEVEL.name()); - memberMapper.updateById(mallMember); + + if (hasTc){ + if(achieveAmount.compareTo(BigDecimal.ZERO) > 0) { + // 添加业绩 + MallAchieveRecord mallAchieveRecord = new MallAchieveRecord(); + mallAchieveRecord.setMemberId(member.getId()); + mallAchieveRecord.setAmount(achieveAmount); + mallAchieveRecord.setAchieveTime(orderInfo.getPayTime()); + mallAchieveRecord.setOrderId(orderInfo.getId()); + mallAchieveRecord.setIsNormal(2); + mallAchieveRecord.setPayTime(orderInfo.getPayTime()); + mallAchieveRecordMapper.insert(mallAchieveRecord); } } mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue()); agentProducer.sendAutoLevelUpMsg(member.getId()); - agentProducer.sendOrderReturn(orderInfo.getId()); +// agentProducer.sendOrderReturn(orderInfo.getId()); + agentProducer.sendReturnMoneyMsg(orderInfo.getId()); break; case "4": if (orderInfo.getOrderType() != 2) { -- Gitblit v1.9.1