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) {
$payService = new PayService();
if (data_get($message, 'result_code') !== 'SUCCESS') {
if (data_get($message, 'result_code') === 'SUCCESS') {
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'],
]);
}
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) {
OrderPaid::dispatchIf($payLog->payable->isPaid(), $payLog->payable);
$payable = $payLog?->payable;
if ($payable instanceof Order) {
OrderPaid::dispatchIf($payable->isPaid(), $payable);
}
} catch (ModelNotFoundException | BizException $e) {
} catch (Throwable $e) {