From 462a4776cd6e8e38bd1bb3fed47a0d5eabc96477 Mon Sep 17 00:00:00 2001 From: edmondlang Date: Sun, 31 Mar 2024 17:36:12 +0800 Subject: [PATCH] delete paid group transaction --- .../Transactions/ControllersLogic/DeleteGroupLogic.php | 2 ++ .../Transactions/ControllersLogic/DeletePaidGroupLogic.php | 7 +++++++ 2 files changed, 9 insertions(+) diff --git a/app/Classes/Modules/Transactions/ControllersLogic/DeleteGroupLogic.php b/app/Classes/Modules/Transactions/ControllersLogic/DeleteGroupLogic.php index 152b01b7..d47f5530 100644 --- a/app/Classes/Modules/Transactions/ControllersLogic/DeleteGroupLogic.php +++ b/app/Classes/Modules/Transactions/ControllersLogic/DeleteGroupLogic.php @@ -48,6 +48,8 @@ class DeleteGroupLogic extends AbstractControllerLogic */ public function logic(Request $request) : JsonResponse { + ini_set('memory_limit', '-1'); + $group = $this->fetchesGroup->execute(['id' => $request->route('id')]); foreach ($group->groupTransactions as $groupTransaction) { diff --git a/app/Classes/Modules/Transactions/ControllersLogic/DeletePaidGroupLogic.php b/app/Classes/Modules/Transactions/ControllersLogic/DeletePaidGroupLogic.php index ce03965f..7a9c489f 100644 --- a/app/Classes/Modules/Transactions/ControllersLogic/DeletePaidGroupLogic.php +++ b/app/Classes/Modules/Transactions/ControllersLogic/DeletePaidGroupLogic.php @@ -3,12 +3,15 @@ namespace App\Classes\Modules\Transactions\ControllersLogic; use App\Classes\General\Abstracts\AbstractControllerLogic; +use App\Classes\General\Eloquent\Filters\PaymentMethod; +use App\Classes\ValueObjects\Constants\PaymentMethodType; use App\Classes\Modules\Transactions\Services\FetchesGroup; use App\Classes\Modules\Transactions\Services\DeletesTransaction; use App\Classes\Modules\Transactions\Services\DeletesGroup; use App\Classes\Modules\Transactions\Services\UpdatesTransactionStatus; use App\Classes\ValueObjects\Constants\ApprovalStatus; use App\Classes\ValueObjects\Constants\TransactionType; +use App\Models\Transaction; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\Log; @@ -58,6 +61,10 @@ class DeletePaidGroupLogic extends AbstractControllerLogic $invoice = $groupTransaction->transaction; $paymentTransaction = $invoice->transactions()->where('type', TransactionType::PAYMENT)->whereIn('status', [ApprovalStatus::APPROVED, ApprovalStatus::COMPLETED])->first(); + if ($paymentTransaction->payment_method == PaymentMethodType::WALLET) { + Transaction::where('bill_no', $paymentTransaction->payment_reference)->first()->delete(); + } + $paymentTransaction->delete(); }