From aed6b73c71fb7c4acee646d5413dcf9d7a3bb692 Mon Sep 17 00:00:00 2001 From: mahdi purHosseini Date: Wed, 6 Mar 2024 10:49:03 +0330 Subject: [PATCH] fix some problems --- app/Http/Controllers/ItemController.php | 1 + .../Controllers/TransferPackageController.php | 16 ++++++++++++++++ app/Policies/MedicalCenterPolicy.php | 1 - 3 files changed, 17 insertions(+), 1 deletion(-) diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index a9619285..69462c3e 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -113,6 +113,7 @@ class ItemController extends Controller $Items = Item::where( "status" , StatusTypeEnum::APPROVED ) ->where( "package_id" , null ) ->orderByDesc( 'id' ) + ->isNotRepaired() ->get(); return ItemResource::collection( $Items ); } diff --git a/app/Http/Controllers/TransferPackageController.php b/app/Http/Controllers/TransferPackageController.php index c84bfdc0..93705ec2 100644 --- a/app/Http/Controllers/TransferPackageController.php +++ b/app/Http/Controllers/TransferPackageController.php @@ -65,13 +65,29 @@ class TransferPackageController extends Controller return MessageResponse::error( trans( 'messages.access_denied' ) ); } if ( $Package->user_id != $request->user_id ) { + + $previousUserPackage = $Package->user_id; + + //create transfer for the Package $Package->transfers()->create( [ "user_id" => $request->user_id , "from_date" => Carbon::now() , "status" => StatusTypeEnum::APPROVED ] ); + + //finishing the last transfer of the Package if ( $Package->transferActive ) $Package->transferActive()->update( [ "to_date" => Carbon::now() ] ); + + //update user of Package $Package->update( [ "user_id" => $request->user_id ] ); + + //update user of items of Package + foreach ( $Package->items as $item ) { + if ($item->user_id == $previousUserPackage){ + $item->update( [ "user_id" => $request->user_id ] ); + } + } + } else { return MessageResponse::error( trans( 'messages.user_denied_transfer' ) ); } diff --git a/app/Policies/MedicalCenterPolicy.php b/app/Policies/MedicalCenterPolicy.php index 20e1bedd..4102a190 100644 --- a/app/Policies/MedicalCenterPolicy.php +++ b/app/Policies/MedicalCenterPolicy.php @@ -4,7 +4,6 @@ namespace App\Policies; use App\User; use App\MedicalCenter; -use Doctrine\Tests\Common\Inflector\InflectorTest; class MedicalCenterPolicy {