From d8fb82111f08f7f3be1d9cff9e7a11dfc120ad77 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 27 Sep 2021 19:06:20 +0800
Subject: [PATCH] fix alipay callback

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 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 5cfa585..91b7378 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
@@ -174,27 +174,32 @@
                 orderInfo.setPayMethod("微信支付");
                 break;
             case "2":
-                payResultStr = payService.aliPay(orderInfo);
+                if (StrUtil.isNotBlank(orderInfo.getPayOrderNo())) {
+                    payResultStr = orderInfo.getPayOrderNo();
+                } else {
+                    payResultStr = payService.aliPay(orderInfo);
+                }
 
                 orderInfo.setPayOrderNo(payResultStr);
                 orderInfo.setPayMethod("支付宝支付");
+
                 break;
             case "3":
                 payResultStr = balancePay(orderInfo, payOrderDto.getTradePwd());
 
                 orderInfo.setPayOrderNo(orderInfo.getOrderNo());
                 orderInfo.setPayMethod("积分支付");
-
                 orderInfo.setStatus(OrderStatusEnum.WAIT_SHIPPING.getValue());
                 orderInfo.setPayTime(new Date());
                 orderInfo.setPayResult("1");
-                this.baseMapper.updateById(orderInfo);
 
                 memberService.addMoneyFlow(member.getId(), orderInfo.getAmount().negate(), MoneyFlowTypeEnum.PAY.getValue(), orderInfo.getOrderNo(), null, null, null, null);
             default:
 
         }
 
+        this.baseMapper.updateById(orderInfo);
+
         Map<String, Object> map = new HashMap<>();
         map.put("orderInfo", payResultStr);
         map.put("orderNo", orderInfo.getOrderNo());

--
Gitblit v1.9.1