diff --git a/app/Classes/Modules/Transactions/ControllersLogic/ApprovePaymentTransactionLogic.php b/app/Classes/Modules/Transactions/ControllersLogic/ApprovePaymentTransactionLogic.php index 58172a87..9dcb3eeb 100644 --- a/app/Classes/Modules/Transactions/ControllersLogic/ApprovePaymentTransactionLogic.php +++ b/app/Classes/Modules/Transactions/ControllersLogic/ApprovePaymentTransactionLogic.php @@ -13,6 +13,7 @@ use App\Classes\Modules\Transactions\Processors\CreatePaymentTransactionProcesso use App\Classes\Modules\Transactions\Services\FetchesTransaction; use App\Classes\Modules\Transactions\Services\UpdatesTransactionStatus; use App\Classes\ValueObjects\Constants\ApprovalStatus; +use App\Models\Document; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Log; @@ -84,11 +85,15 @@ class ApprovePaymentTransactionLogic extends AbstractControllerLogic Log::info("document ".json_encode($document)); + $doc = Document::where('id', $document->id)->lockForUpdate()->first(); + + Log::info("doc ".json_encode($doc)); + if($status === 'approve') { - $this->approvesDocument->execute($document); + $this->approvesDocument->execute($doc); } else { - $this->rejectsDocument->execute($document); + $this->rejectsDocument->execute($doc); } $this->updatesTransactionStatus->execute($transaction, $status === 'approve' ? ApprovalStatus::APPROVED : ApprovalStatus::REJECTED);