fix status

This commit is contained in:
mahdi purHosseini
2024-01-30 14:35:33 +03:30
parent 761aec8b69
commit 1d6d81a461
15 changed files with 147 additions and 33 deletions
@@ -2,7 +2,8 @@
namespace App\Http\Controllers;
use App\Http\Requests\StoreTransferChangeStatusRequest;
use App\Constants\StatusTypeEnum;
use App\Http\Requests\ChangeStatusRequest;
use App\Http\Requests\StoreTransferRequest;
use App\Http\Resources\TransferResource;
use App\Item;
@@ -15,7 +16,7 @@ class TransferItemController extends Controller
public function getSuspendedTransfer()
{
$data = Transfer::where( "transferable_type" , "App\\Item" )
->where( "status" , "suspended" )
->where( "status" , StatusTypeEnum::SUSPENDED )
->with( [ "user" , "transferable" , "transferable.user" ] );
$user = auth( 'api' )->user();
@@ -32,13 +33,13 @@ class TransferItemController extends Controller
return TransferResource::collection($data);
}
public function changeStatus( StoreTransferChangeStatusRequest $request , Transfer $Transfer )
public function changeStatus( ChangeStatusRequest $request , Transfer $Transfer )
{
if ( auth( 'api' )->user()->cant( 'changeStatus' , [ Transfer::class , $Transfer ] ) ) {
return MessageResponse::error( trans( 'messages.access_denied' ) );
}
if ( $Transfer->status == "suspended" ) {
if ( $request->status == "approved" ) {
if ( $Transfer->status == StatusTypeEnum::SUSPENDED ) {
if ( $request->status == StatusTypeEnum::APPROVED ) {
$item = $Transfer->transferable;
if ( $item->transferActive ) $item->transferActive()->update( [ "to_date" => Carbon::now() ] );
$Transfer->update( [ "status" => $request->status ] );
@@ -61,7 +62,7 @@ class TransferItemController extends Controller
$Item->transfers()->create( [
"user_id" => $request->user_id ,
"from_date" => Carbon::now() ,
"status" => "suspended"
"status" => StatusTypeEnum::SUSPENDED
] );
} else {
return MessageResponse::error( trans( 'messages.user_denied_transfer' ) );