fix: payment

This commit is contained in:
tokumeikoi
2021-04-28 18:29:28 +09:00
parent 3bfa2180e6
commit 0333d62e6f
3 changed files with 9 additions and 7 deletions

View File

@ -11,11 +11,11 @@ use App\Http\Controllers\Controller;
class PaymentController extends Controller
{
public function notify($method, Request $request)
public function notify($method, $id, Request $request)
{
$paymentService = new PaymentService($method);
$paymentService = new PaymentService($method, $id);
$verify = $paymentService->notify($request->input());
if ($verify) abort(500, 'verify error');
if (!$verify) abort(500, 'verify error');
if (!$this->handle($verify['trade_no'], $verify['callback_no'])) {
abort(500, 'handle error');
}
@ -25,10 +25,10 @@ class PaymentController extends Controller
private function handle($tradeNo, $callbackNo)
{
$order = Order::where('trade_no', $tradeNo)->first();
if ($order->status === 1) return true;
if (!$order) {
abort(500, 'order is not found');
}
if ($order->status === 1) return true;
$orderService = new OrderService($order);
if (!$orderService->success($callbackNo)) {
return false;

View File

@ -21,7 +21,7 @@ class GuestRoute
// Telegram
$router->post('/telegram/webhook', 'Guest\\TelegramController@webhook');
// Payment
$router->match(['get', 'post'], '/payment/{method}', 'Guest\\PaymentController@notify');
$router->match(['get', 'post'], '/payment/{method}/{id}', 'Guest\\PaymentController@notify');
});
}
}