From ca7809d5fcf86454118d41c88a3b9c238fe6b270 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Sat, 28 May 2022 10:58:49 +0800
Subject: [PATCH] Merge branch 'mall-amz' of http://120.27.238.55:7000/r/xc-mall into mall-amz

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   36 ++++++++++++++++++++++++------------
 1 files changed, 24 insertions(+), 12 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 bc4c6a5..a21cfb8 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
@@ -114,6 +114,8 @@
                 orderItem.setStyleName(mallGoods.getGoodsName());
                 orderItem.setSkuName(mallGoods.getGoodsName());
                 orderItem.setSkuImage(mallGoods.getThumb());
+
+                total = total.add(amount);
             } else {
                 MallGoodsSku sku = mallGoodsSkuMapper.selectSkuInfoById(item.getSkuId());
                 if (sku == null) {
@@ -140,6 +142,8 @@
                 orderItem.setStyleName(sku.getStyleName());
                 orderItem.setSkuName(sku.getSkuName());
                 orderItem.setSkuImage(sku.getSkuImage());
+                orderItem.setIsNormal(mallGoods.getIsNormal());
+                orderItem.setCostPrice(sku.getCostPrice());
 
                 total = total.add(amount);
 
@@ -199,6 +203,7 @@
 //                orderInfo.setPayOrderNo(payOrderDto.getPayOrderNo());
 //                orderInfo.setPayImage(payOrderDto.getPayImage());
                 orderInfo.setPayMethod("微信支付");
+                agentProducer.sendOrderReturn(orderInfo.getId());
                 break;
             case "2":
                 if (StrUtil.isNotBlank(orderInfo.getPayOrderNo())) {
@@ -209,6 +214,7 @@
 
                 orderInfo.setPayOrderNo(payResultStr);
                 orderInfo.setPayMethod("支付宝支付");
+                agentProducer.sendOrderReturn(orderInfo.getId());
                 break;
             case "3":
                 payResultStr = balancePay(orderInfo, payOrderDto.getTradePwd(), "balance");
@@ -219,29 +225,36 @@
                 orderInfo.setPayTime(new Date());
                 orderInfo.setPayResult("1");
 
-//                MallMember mallMember = memberMapper.selectById(member.getId());
-//                if (AgentLevelEnum.ZERO_LEVEL.name().equals(mallMember.getLevel())) {
-//                    mallMember.setLevel(AgentLevelEnum.FIRST_LEVEL.name());
-//                    memberMapper.updateById(mallMember);
-//                }
-
+                boolean hasTc = false;
                 // 静态倍数
                 List<MallOrderItem> orderItems = this.baseMapper.getMallOrderItemByOrderId(orderInfo.getId());
                 if (CollUtil.isNotEmpty(orderItems)) {
                     for (MallOrderItem orderItem : orderItems) {
                         MallGoods mallGoods = mallGoodsMapper.selectById(orderItem.getGoodsId());
 
-                        MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId());
-                        BigDecimal score = sku.getOriginalPrice().multiply(mallGoods.getStaticMulti());
+                        if (mallGoods.getIsNormal() == 2) {
+                            hasTc = true;
+                            MallGoodsSku sku = mallGoodsSkuMapper.selectById(orderItem.getSkuId());
+                            BigDecimal score = sku.getOriginalPrice().multiply(mallGoods.getStaticMulti());
 
-                        memberWalletService.add(score, member.getId(), "score");
-                        mallMoneyFlowService.addMoneyFlow(member.getId(), score, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue());
+                            memberWalletService.add(score, member.getId(), "score");
+                            mallMoneyFlowService.addMoneyFlow(member.getId(), score, MoneyFlowTypeEnum.STATIC_BONUS.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.SCORE.getValue());
+                        }
+                    }
+                }
+
+                // 购买套餐后,升级为普通会员
+                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);
                     }
                 }
 
                 mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue());
 //                agentProducer.sendAutoLevelUpMsg(member.getId());
-//                agentProducer.sendReturnMoneyMsg(orderInfo.getId());
+                agentProducer.sendOrderReturn(orderInfo.getId());
                 break;
             case "4":
                 if (orderInfo.getOrderType() != 2) {
@@ -254,7 +267,6 @@
                 orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue());
                 orderInfo.setPayTime(new Date());
                 orderInfo.setPayResult("1");
-
 
                 mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(),  FlowTypeEnum.PRIZE_SCORE.getValue());
                 break;

--
Gitblit v1.9.1