Browse Source

🐞 fix: 修复订单无论支付都被关闭的问题

Pchen0 1 week ago
parent
commit
9307c287fb
1 changed files with 7 additions and 2 deletions
  1. 7 2
      apis/Order/CreateOrder.js

+ 7 - 2
apis/Order/CreateOrder.js

@@ -95,8 +95,13 @@ async function pollOrderPaymentStatus(orderId, logger) {
 
     const pollOrderStatus = async (retry = 0) => {
         if (retry >= MAX_RETRIES) {
-            logger.info(`订单超时未支付,自动取消,订单号:${orderId}`)
-            await db.query('UPDATE orders SET state = 3 WHERE orderId = ?', [orderId])
+            const closeRes = await db.query(
+                'UPDATE orders SET state = 3 WHERE orderId = ? AND state = 0',
+                [orderId]
+            )
+            if (closeRes?.affectedRows > 0) {
+                logger.info(`订单超时未支付,自动取消,订单号:${orderId}`)
+            }
             return
         }