From e65e67a526ceb03864a0e3f2308e968afa21f445 Mon Sep 17 00:00:00 2001 From: amirghasempoor Date: Sun, 21 Sep 2025 15:27:42 +0330 Subject: [PATCH] cleaning the accident cartable --- .../Accident/AccidentReceiptController.php | 42 ++++++------------- 1 file changed, 12 insertions(+), 30 deletions(-) diff --git a/app/Http/Controllers/V3/Dashboard/Accident/AccidentReceiptController.php b/app/Http/Controllers/V3/Dashboard/Accident/AccidentReceiptController.php index 8107a951..eeece69e 100644 --- a/app/Http/Controllers/V3/Dashboard/Accident/AccidentReceiptController.php +++ b/app/Http/Controllers/V3/Dashboard/Accident/AccidentReceiptController.php @@ -256,22 +256,18 @@ class AccidentReceiptController extends Controller $final_amount = $accident->driver_share_amount - ($accident->deposit_insurance_amount + $accident->deposit_daghi_amount); - if ($final_amount > 0) { - $status = AccidentStates::SABT_FISH->value; - $status_fa = AccidentStates::name($status); - } - elseif ($final_amount == 0) { - $status = AccidentStates::PARDAKHT_FACTOR->value; - $status_fa = AccidentStates::name($status); - } + throw_if($final_amount < 0, new ProhibitedAction('مبالغ داغی و بیمه از مبلغ کل بیشتر می باشد.')); + + $status = $final_amount > 0 ? AccidentStates::SABT_FISH->value : AccidentStates::PARDAKHT_FACTOR->value; $accident->update([ + 'final_amount' => $final_amount, 'deposit_insurance_image' => $request->has('deposit_insurance_image') ? FileFacade::save($request->deposit_insurance_image, "receipts_files/{$accident->id}/deposit_insurance") : null, 'deposit_insurance_amount' => $request->deposit_insurance_amount ?? 0, 'deposit_daghi_image' => $request->has('deposit_daghi_image') ? FileFacade::save($request->deposit_daghi_image, "receipts_files/{$accident->id}/deposit_daghi") : null, 'deposit_daghi_amount' => $request->deposit_daghi_amount ?? 0, 'status' => $status, - 'status_fa' => $status_fa, + 'status_fa' => AccidentStates::name($status), ]); auth()->user()->addActivityComplete(1132); @@ -288,16 +284,13 @@ class AccidentReceiptController extends Controller $lock = Cache::lock("accidentPayment-{$accident->id}", 10); throw_if(!$lock->get(), new ProhibitedAction('امکان درخواست مجدد تا 10 ثانیه دیگر وجود ندارد')); - $final_amount = $accident->driver_share_amount - ($accident->deposit_insurance_amount + $accident->deposit_daghi_amount); - - throw_if($final_amount < 0, new ProhibitedAction('مبالغ داغی و بیمه از مبلغ کل بیشتر می باشد.')); + $final_amount = $accident->final_amount; $bill_code = $paymentService->invoiceBillApi($accident->driver_national_code, $final_amount); DB::transaction(function () use ($bill_code, $final_amount, $accident) { $accident->update([ - 'final_amount' => $final_amount, 'bill_code' => $bill_code, 'status' => AccidentStates::SODOR_FACTOR->value, 'status_fa' => AccidentStates::name(AccidentStates::SODOR_FACTOR->value), @@ -318,26 +311,15 @@ class AccidentReceiptController extends Controller public function checkPaymentStatus(Accident $accident, PaymentService $paymentService): JsonResponse { DB::transaction(function () use ($accident, $paymentService) { - if ($accident->final_amount > 0) { - $response = json_decode($paymentService->callPaymentStatusBillApi(explode("/", $accident->bill_code)[0])); + $response = json_decode($paymentService->callPaymentStatusBillApi(explode("/", $accident->bill_code)[0])); - throw_if(!$response->isPayed, new ProhibitedAction('پرداخت انجام نشده است')); + throw_if(!$response->isPayed, new ProhibitedAction('پرداخت انجام نشده است')); - if ($response->isPayed) { - $accident->update([ - 'status' => AccidentStates::PARDAKHT_FACTOR->value, - 'status_fa' => AccidentStates::name(AccidentStates::PARDAKHT_FACTOR->value), - ]); - } - } - else - { - $accident->update([ - 'status' => AccidentStates::PARDAKHT_FACTOR->value, - 'status_fa' => AccidentStates::name(AccidentStates::PARDAKHT_FACTOR->value), - ]); - } + $accident->update([ + 'status' => AccidentStates::PARDAKHT_FACTOR->value, + 'status_fa' => AccidentStates::name(AccidentStates::PARDAKHT_FACTOR->value), + ]); auth()->user()->addActivityComplete(1130); });