Browse Source

后台支付回调

Gorden 6 months ago
parent
commit
1052521219

+ 19 - 0
app/admin/controller/notify/OrderPayController.php

@@ -0,0 +1,19 @@
+<?php
+
+namespace app\admin\controller\notify;
+
+use support\Log;
+use support\Request;
+
+class OrderPayController
+{
+    public function wxpay(Request $request)
+    {
+        Log::channel('pay')->info("WXPAY_NOTIFY", $request->all());
+    }
+
+    public function alipay(Request $request)
+    {
+        Log::channel('pay')->info("ALIPAY_NOTIFY", $request->all());
+    }
+}

+ 15 - 7
app/admin/service/order/OrderService.php

@@ -202,11 +202,15 @@ class OrderService
         $qrcodeNbr = $params['qrcode_nbr'];
         $prefix = substr($qrcodeNbr, 0, 2);
         // 模拟数据
-        // $result = [
-        //     'return_code'=>'SUCCESS',
-        //     'result_code' => 'SUCCESS'
-        // ];
-        // return $result;
+//         $result = [
+//             'return_code'=>'SUCCESS',
+//             'result_code' => 'SUCCESS'
+//         ];
+//        $result=[
+//            'code'=> '10000',
+//            'msg' => 'Success'
+//        ];
+//         return $result;
         // 微信支付
         if (in_array($prefix, [10, 11, 12, 13, 14, 15])) {
             $payData = [
@@ -216,7 +220,9 @@ class OrderService
                 'auth_code' => $params['qrcode_nbr'],
             ];
             try {
-                Pay::wechat(config('payment.wxpay'))->pos($payData);
+                $config = config('payment.wxpay');
+                $config['notify_url'] = getenv('NOTIFY_DOMAIN_ADMIN').'/notify/orderPay/wxpay';
+                Pay::wechat($config)->pos($payData);
                 $result = self::findWxpay($params['orderGroupId'], 0);
             } catch (\Exception $e) {
                 $log->error("WXPAY", ['msg' => $e->getMessage()]);
@@ -235,7 +241,9 @@ class OrderService
                 'auth_code' => $params['qrcode_nbr'],
             ];
             try {
-                Pay::alipay(config('payment.alipay'))->pos($payData);
+                $config = config('payment.alipay');
+                $config['notify_url'] = getenv('NOTIFY_DOMAIN_ADMIN').'/notify/orderPay/alipay';
+                Pay::alipay($config)->pos($payData);
                 $result = self::findAlipay($params['orderGroupId'], 0);
             } catch (\Exception $e) {
                 $log->error("ALIPAY", ['msg' => $e->getMessage()]);

+ 2 - 0
route/admin.php

@@ -1047,4 +1047,6 @@ Route::group('/admin', function () {
 
 Route::group('/notify', function () {
     Route::post('/recharge/paySuccess', [\app\admin\controller\notify\RechargeController::class, 'paySuccess']);
+    Route::post('/orderPay/wxpay', [\app\admin\controller\notify\OrderPayController::class, 'wxpay']);
+    Route::post('/orderPay/alipay', [\app\admin\controller\notify\OrderPayController::class, 'alipay']);
 });