6
0
Fork 0
release
李静 2021-12-29 10:25:04 +08:00
parent 1b6e73bd0b
commit 8ab91943e8
1 changed files with 11 additions and 9 deletions

View File

@ -36,21 +36,23 @@ class WeChatPayController extends Controller
$payLog = DB::transaction(function () use ($message) { $payLog = DB::transaction(function () use ($message) {
$payService = new PayService(); $payService = new PayService();
if (data_get($message, 'result_code') !== 'SUCCESS') { if (data_get($message, 'result_code') === 'SUCCESS') {
return $payService->handleSuccessByPaySerialNumber($message['out_trade_no'], [ return $payService->handleSuccessByPaySerialNumber($message['out_trade_no'], [
'pay_sn' => $message['transaction_id'] ?? null, 'out_trade_no' => $message['transaction_id'],
'pay_at' => Carbon::parse($message['time_end']),
]);
} elseif (data_get($message, 'result_code') === 'FAIL') {
return $payService->handleFailedByPaySerialNumber($message['out_trade_no'], [
'out_trade_no' => $message['transaction_id'] ?? null,
'failed_reason' => '['.$message['err_code'].']'.$message['err_code_des'], 'failed_reason' => '['.$message['err_code'].']'.$message['err_code_des'],
]); ]);
} }
return $payService->handleFailedByPaySerialNumber($message['out_trade_no'], [
'out_trade_no' => $message['transaction_id'],
'pay_at' => Carbon::parse($message['time_end']),
]);
}); });
if ($payLog->payable instanceof Order) { $payable = $payLog?->payable;
OrderPaid::dispatchIf($payLog->payable->isPaid(), $payLog->payable);
if ($payable instanceof Order) {
OrderPaid::dispatchIf($payable->isPaid(), $payable);
} }
} catch (ModelNotFoundException | BizException $e) { } catch (ModelNotFoundException | BizException $e) {
} catch (Throwable $e) { } catch (Throwable $e) {