浏览代码

fix:关单处理

刘俊驰 6 月之前
父节点
当前提交
d5de2c9f5d

+ 12 - 0
cooleshow-app/src/main/java/com/yonge/cooleshow/admin/controller/open/UserPaymentClient.java

@@ -321,4 +321,16 @@ public class UserPaymentClient {
         }
         return null;
     }
+
+    @ApiOperation(value = "订单付款状态", notes = "订单付款状态")
+    @PostMapping("/paymentStatus/{orderNo}")
+    public R<Boolean> paymentStatus(@PathVariable("orderNo") String orderNo) {
+
+
+        // 用户订单支付状态
+
+        userPaymentCoreService.paymentStatus(orderNo);
+
+        return R.from(false);
+    }
 }

+ 18 - 3
cooleshow-user/user-biz/src/main/java/com/yonge/cooleshow/biz/dal/service/impl/UserPaymentCoreServiceImpl.java

@@ -707,10 +707,10 @@ public class UserPaymentCoreServiceImpl implements UserPaymentCoreService {
             }
 
             // 删除支付配置
-            redisCacheService.deleteUserPaymentConfig(userId, userPaymentOrder.getOrderType().getCode());
+            redisCacheService.deleteUserPaymentConfig(userId, userPaymentOrder.getOrderNo());
 
             // 删除下单配置
-            redisCacheService.deleteUserOrderConfig(userId, userPaymentOrder.getOrderType().getCode());
+            redisCacheService.deleteUserOrderConfig(userId, userPaymentOrder.getOrderNo());
         }
 
         // 三方支付失败
@@ -729,7 +729,22 @@ public class UserPaymentCoreServiceImpl implements UserPaymentCoreService {
                 .cancelPayment(UserPaymentOrderWrapper.UserPaymentOrder.from(JSON.toJSONString(userPaymentOrder)), paymentResp);
 
             // 删除本地缓存
-            redisCacheService.deleteUserPaymentConfig(userId, userPaymentOrder.getOrderType().getCode());
+            redisCacheService.deleteUserPaymentConfig(userId, userPaymentOrder.getOrderNo());
+        }
+
+        // 三方订单关闭状态
+        if (PaymentStatus.CLOSED == paymentResp.getPaymentStatus() && EPaymentStatus.CLOSED != userPaymentOrder.getStatus()) {
+
+            // 订单关闭流程
+            SpringContextHolder.getBean(UserPaymentCoreService.class)
+                .cancelPayment(UserPaymentOrderWrapper.UserPaymentOrder.from(JSON.toJSONString(userPaymentOrder)), paymentResp);
+
+            // 删除本地缓存
+            redisCacheService.deleteUserPaymentConfig(userId, userPaymentOrder.getOrderNo());
+
+            // 删除下单配置
+            redisCacheService.deleteUserOrderConfig(userId, userPaymentOrder.getOrderNo());
+
         }
     }