zouxuan 5 ماه پیش
والد
کامیت
efddcaba72
1فایلهای تغییر یافته به همراه12 افزوده شده و 8 حذف شده
  1. 12 8
      mec-application/src/main/java/com/ym/mec/student/controller/StudentOrderController.java

+ 12 - 8
mec-application/src/main/java/com/ym/mec/student/controller/StudentOrderController.java

@@ -132,17 +132,21 @@ public class StudentOrderController extends BaseController {
         return succeed(studentPaymentOrderPageInfo);
     }
 
-    @PostMapping("/callback/{orderNo}")
-	public String callback(@PathVariable("orderNo") String orderNo, HttpServletRequest request) {
-		StudentPaymentOrder studentPaymentOrder = studentPaymentOrderService.findOrderByOrderNo(orderNo);
+    @PostMapping("/callback/{vendor}")
+	public String callback(@PathVariable("vendor") String vendor, HttpServletRequest request) {
+        BasePaymentService paymentService = paymentServiceContext.getPaymentService(vendor);
+        if (Objects.isNull(paymentService)) {
+            throw new BizException("支付渠道不存在 " + vendor);
+        }
+        PaymentResp paymentResp = paymentService.callbackNotifyForPay(request);
+        logger.info("payment vendor={}, paymentResp={}", vendor, JSON.toJSONString(paymentResp));
+        if (Objects.isNull(paymentResp)) {
+            return "支付回调失败";
+        }
+		StudentPaymentOrder studentPaymentOrder = studentPaymentOrderService.findOrderByOrderNo(paymentResp.getMerOrderNo());
 		if(studentPaymentOrder == null) {
 			return "订单号错误";
 		}
-        BasePaymentService paymentService = paymentServiceContext.getPaymentService(studentPaymentOrder.getPaymentChannel() + "_" + studentPaymentOrder.getTenantId());
-        if (paymentService == null) {
-            return "支付渠道不存在 " + studentPaymentOrder.getPaymentChannel();
-        }
-        PaymentResp paymentResp = paymentService.callbackNotifyForPay(request);
         try {
             Map<String, String> notifyMap = new HashMap<>(4);
             notifyMap.put("channelType", paymentResp.getPaymentChannel());