From e70f0cc17b3377a1e200490df94cda368098ff08 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 26 Jul 2023 14:24:26 +0800
Subject: [PATCH] 短信认证

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   53 +++++++++++++++++++----------------------------------
 1 files changed, 19 insertions(+), 34 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 7656e4d..7d869e2 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
@@ -145,35 +145,8 @@
             if(1 != goodsResult){
                 throw new FebsException(mallGoods.getGoodsName() + "库存不足");
             }
-            BigDecimal amount = BigDecimal.ZERO;
-            BigDecimal itemPrice = BigDecimal.ZERO;
-            /**
-             *
-             */
-            Integer isNormal = mallGoods.getIsNormal();
-            if(GoodsTypeEnum.SCORE_CHANGE.getValue() == isNormal){
-                //普通用户使用原价购买
-                amount = sku.getOriginalPrice().multiply(BigDecimal.valueOf(item.getCnt()));
-                itemPrice = sku.getOriginalPrice();
-            }else if(GoodsTypeEnum.BUY_SCORE.getValue() == isNormal){
-                //普通用户使用原价购买
-                amount = sku.getLevelOnePrice().multiply(BigDecimal.valueOf(item.getCnt()));
-                itemPrice = sku.getLevelOnePrice();
-            }else if(GoodsTypeEnum.NORMAL_GOODS.getValue() == isNormal){
-                //普通用户使用原价购买
-                amount = sku.getLevelTwoPrice().multiply(BigDecimal.valueOf(item.getCnt()));
-                itemPrice = sku.getLevelTwoPrice();
-            }else if(GoodsTypeEnum.CLASS_ROLL.getValue() == isNormal){
-                //普通用户使用原价购买
-                amount = sku.getLevelThreePrice().multiply(BigDecimal.valueOf(item.getCnt()));
-                itemPrice = sku.getLevelThreePrice();
-            }else if(GoodsTypeEnum.HOUSE_ROLL.getValue() == isNormal){
-                //普通用户使用原价购买
-                amount = sku.getLevelThreePrice().multiply(BigDecimal.valueOf(item.getCnt()));
-                itemPrice = sku.getLevelThreePrice();
-            }else{
-                throw new FebsException("当前商品无法购买!");
-            }
+            BigDecimal amount = sku.getPresentPrice().multiply(BigDecimal.valueOf(item.getCnt()));
+            BigDecimal itemPrice = sku.getPresentPrice();
             orderItem.setAmount(amount);
             orderItem.setCnt(item.getCnt());
             orderItem.setOrderId(orderInfo.getId());
@@ -322,6 +295,7 @@
 
         String payResultStr = "";
         String wxResultStr = "";
+        String amountActualMsg = "0";
         switch (payOrderDto.getType()) {
             case "1":
                 BrandWCPayRequestData brandWCPayRequestData = null;
@@ -333,6 +307,7 @@
                 wxResultStr = JSONUtil.toJsonStr(brandWCPayRequestData);
                 payResultStr = brandWCPayRequestData.getPrepay_id();
                 orderInfo.setPayMethod("微信支付");
+                amountActualMsg = orderInfo.getAmount().toString();
                 break;
             case "2":
                 payResultStr = balancePay(orderInfo, payOrderDto.getTradePwd(), "balance");
@@ -346,6 +321,8 @@
 
                 mallMoneyFlowService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(),
                         orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2);
+
+                amountActualMsg = orderInfo.getAmount().toString();
                 break;
             case "3":
                 /**
@@ -395,6 +372,7 @@
                 if(amountActual.compareTo(BigDecimal.ZERO) > 0){
                     mallMoneyFlowService.addMoneyFlow(member.getId(), amountActual.negate(), MoneyFlowTypeEnum.PAY.getValue(),
                             orderInfo.getOrderNo(), FlowTypeEnum.BALANCE.getValue(),"余额支付",2);
+                    amountActualMsg = amountActual.toString();
                 }
                 if(scoreActual.compareTo(BigDecimal.ZERO) > 0){
                     mallMoneyFlowService.addMoneyFlow(member.getId(), scoreActual.negate(),
@@ -410,12 +388,12 @@
                 if(stateRoll == 2){
                     throw new FebsException("兑换券已使用");
                 }
-
+                mallRollPerk.setState(2);
+                mallRollPerkMapper.updateById(mallRollPerk);
                 payResultStr = orderInfo.getOrderNo();
 
-                orderInfo.setPayOrderNo(orderInfo.getOrderNo());
+                orderInfo.setPayOrderNo(payOrderDto.getRollId().toString());
                 orderInfo.setPayMethod("兑换券支付");
-                orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue());
                 orderInfo.setPayTime(new Date());
                 orderInfo.setPayResult("1");
 
@@ -425,13 +403,20 @@
             default:
 
         }
+        if(ObjectUtil.isNotEmpty(payOrderDto.getUseTime())){
+            orderInfo.setUseTime(DateUtil.parseDate(payOrderDto.getUseTime()));
+        }
 
         //订单支付成功产生一个提货码
         String takeCode = ShareCodeUtil.toSerialCode(orderInfo.getId());
         orderInfo.setTakeCode(takeCode);
         this.baseMapper.updateById(orderInfo);
-
-
+        StringBuffer stringBuffer = new StringBuffer();
+        stringBuffer.append(orderInfo.getId().toString());
+        stringBuffer.append("@");
+        stringBuffer.append(amountActualMsg);
+        agentProducer.sendOrderGetMsg(stringBuffer.toString());
+        agentProducer.sendRollSendMsg(orderInfo.getId());
 
 //        OrderStateDto orderStateDto = new OrderStateDto();
 //        orderStateDto.setOrderNo(orderInfo.getOrderNo());

--
Gitblit v1.9.1