From 4f0b37b14acd9445040e4fb164f8f4f0116ab8a5 Mon Sep 17 00:00:00 2001 From: devil_gong Date: Tue, 17 Dec 2019 14:18:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8F=91=E8=B5=B7=E6=94=AF=E4=BB=98=E9=92=A9?= =?UTF-8?q?=E5=AD=90=E6=B7=BB=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/service/OrderService.php | 33 ++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/application/service/OrderService.php b/application/service/OrderService.php index fff68d747..4afcbac75 100755 --- a/application/service/OrderService.php +++ b/application/service/OrderService.php @@ -150,6 +150,23 @@ class OrderService 'site_name' => MyC('home_site_name', 'ShopXO', true), 'ajax_url' => MyUrl('index/order/paycheck'), ); + + // 发起支付处理钩子 + $hook_name = 'plugins_service_order_pay_launch_handle'; + $ret = HookReturnHandle(Hook::listen($hook_name, [ + 'hook_name' => $hook_name, + 'is_backend' => true, + 'order_id' => $order['id'], + 'order' => &$order, + 'params' => &$params, + 'pay_data' => &$pay_data, + ])); + if(isset($ret['code']) && $ret['code'] != 0) + { + return $ret; + } + + // 发起支付 $pay_name = 'payment\\'.$payment[0]['payment']; $ret = (new $pay_name($payment[0]['config']))->Pay($pay_data); if(isset($ret['code']) && $ret['code'] == 0) @@ -379,6 +396,22 @@ class OrderService 'pay_price' => $ret['data']['pay_price'], ], ]; + + // 支付成功异步通知处理钩子 + $hook_name = 'plugins_service_order_pay_notify_handle'; + $ret = HookReturnHandle(Hook::listen($hook_name, [ + 'hook_name' => $hook_name, + 'is_backend' => true, + 'payment' => $payment[0], + 'order' => $order, + 'pay_params' => &$pay_params, + ])); + if(isset($ret['code']) && $ret['code'] != 0) + { + return $ret; + } + + // 支付结果处理 return self::OrderPayHandle($pay_params); } -- GitLab