From 09ad3b985ff0318d3da93ce291deb95a0b06693b Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Mon, 15 Apr 2024 13:29:24 +0330 Subject: [PATCH 01/10] fix cors --- app/Http/Kernel.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Kernel.php b/app/Http/Kernel.php index 70fcea1a..88b099ab 100644 --- a/app/Http/Kernel.php +++ b/app/Http/Kernel.php @@ -19,7 +19,7 @@ class Kernel extends HttpKernel \App\Http\Middleware\TrimStrings::class, \Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull::class, \App\Http\Middleware\TrustProxies::class, -// \App\Http\Middleware\Cors::class, + \App\Http\Middleware\Cors::class, ]; /** From bdf2d2544697f766e817be77451501723c252005 Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Mon, 15 Apr 2024 16:26:59 +0330 Subject: [PATCH 02/10] fix cors origin --- app/Http/Middleware/Cors.php | 33 ++++++++++----------------------- 1 file changed, 10 insertions(+), 23 deletions(-) diff --git a/app/Http/Middleware/Cors.php b/app/Http/Middleware/Cors.php index 56d32731..50ed734f 100644 --- a/app/Http/Middleware/Cors.php +++ b/app/Http/Middleware/Cors.php @@ -1,32 +1,19 @@ header('Access-Control-Allow-Origin', '*') - ->header('Access-Control-Allow-credentials', true) ->header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS'); - if (!$request->isMethod('OPTIONS')) { - return $response; - } - $allow = $response->headers->get('Allow'); // true list of allowed methods - if (!$allow) { - return $response; - } - $headers = [ - 'Access-Control-Allow-Methods' => $allow, - 'Access-Control-Max-Age' => 3600, - 'Access-Control-Allow-Headers' => 'X-Requested-With, Origin, X-Csrftoken, Content-Type, Accept', - ]; - return $response->withHeaders($headers); - } - } + + +} From 8d51be6b46725666309e471478b3f7311bc610ae Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Wed, 17 Apr 2024 09:33:30 +0330 Subject: [PATCH 03/10] fix cors origin --- app/Http/Middleware/Cors.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Middleware/Cors.php b/app/Http/Middleware/Cors.php index 50ed734f..8d6e81d6 100644 --- a/app/Http/Middleware/Cors.php +++ b/app/Http/Middleware/Cors.php @@ -11,7 +11,7 @@ class Cors public function handle($request, Closure $next) { return $next($request) - ->header('Access-Control-Allow-Origin', '*') + // ->header('Access-Control-Allow-Origin', '*') ->header('Access-Control-Allow-Methods', 'GET, POST, PUT, DELETE, OPTIONS'); } From e35fd592db59aa53076b7f45068e8a95818a4a09 Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Thu, 18 Apr 2024 14:30:10 +0330 Subject: [PATCH 04/10] fix label index --- app/Http/Controllers/LabelController.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/Http/Controllers/LabelController.php b/app/Http/Controllers/LabelController.php index 61274059..1c120155 100644 --- a/app/Http/Controllers/LabelController.php +++ b/app/Http/Controllers/LabelController.php @@ -14,7 +14,7 @@ class LabelController extends Controller $user = auth( 'api' )->user(); $Labels = Label::when( $user->cant( 'showAll' , Label::class ) , function ( $query ) use ( $user ) { - if ( $user->hasRole( 'Supervisor' ) and $user->hasRole( 'User' ) ) { + if ( $user->hasRole( 'Supervisor' ) or $user->hasRole( 'User' ) ) { $query->whereHas( 'user' , function ( $query ) use ( $user ) { $query->where( 'medical_center_id' , $user->medical_center_id ); } ); From 4e48b74d0f0afbc88a25f38316089800b62d021b Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Fri, 3 May 2024 09:09:24 +0330 Subject: [PATCH 05/10] app/Http/Controllers/UserController.php --- app/Http/Controllers/UserController.php | 28 ++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index c6d3b293..0720ef6a 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -162,16 +162,30 @@ class UserController extends Controller public function getByMedicalCenter( MedicalCenter $MedicalCenter ) { $user = auth( 'api' )->user(); + if ( auth( 'api' )->user()->cant( 'getByMedicalCenter' , $MedicalCenter ) ) { return MessageResponse::error( trans( 'messages.failed' ) ); } - $MedicalCenter = $MedicalCenter->load( [ 'users' => function ( $query ) use ( $user ) { - if ( $user->hasRole( 'User' ) ) { - return $query->select( [ 'id' , 'medical_center_id' , 'name' , 'cell_number' , 'status' ] )->where( 'id' , $user->id ); - } else { - return $query->select( [ 'id' , 'medical_center_id' , 'name' , 'cell_number' , 'status' ] ); - } - } , 'users.roles' ] ); + if ($user->hasRole('Admin')){ + $MedicalCenter = MedicalCenter::with(['users' => function ($query) { + $query->select('id', 'medical_center_id', 'name', 'cell_number', 'status') + ->whereDoesntHave('roles', function ($roleQuery) { + $roleQuery->where('name', 'Admin'); + }); + }, 'users.roles'])->get(); + }else{ + $MedicalCenter = $MedicalCenter->load( [ 'users' => function ( $query ) use ( $user ) { + if ( $user->hasRole( 'User' ) ) { + return $query->select( [ 'id' , 'medical_center_id' , 'name' , 'cell_number' , 'status' ] )->where( 'id' , $user->id ); + } else { + return $query->select( [ 'id' , 'medical_center_id' , 'name' , 'cell_number' , 'status' ] ) + ->whereDoesntHave('roles', function ($roleQuery) { + $roleQuery->where('name', 'Admin'); + }); + } + } , 'users.roles' ] ); + } + return MessageResponse::data( $MedicalCenter ); } From c8f5ba1105fa02cae38258a952dbfc4f1a86f0d6 Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Sun, 26 May 2024 02:13:27 +0330 Subject: [PATCH 06/10] fix trasnfer --- app/Http/Controllers/ItemController.php | 3 ++ app/Http/Controllers/PackageController.php | 4 +++ .../Controllers/TransferItemController.php | 1 + .../Controllers/TransferPackageController.php | 1 + app/Http/Resources/TransferResource.php | 2 ++ app/Transfer.php | 7 +++- ...dd_user_transfer_id_to_transfers_table.php | 32 +++++++++++++++++++ 7 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index 69462c3e..743aa956 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -134,6 +134,9 @@ class ItemController extends Controller } , 'user.medical_center' => function ( $query ) { $query->select( 'id' , 'name' , 'address' , 'phone_number' ); + }, + 'userTransfer' => function ($query) { + $query->select('id','name','cell_number'); } ] ); } diff --git a/app/Http/Controllers/PackageController.php b/app/Http/Controllers/PackageController.php index f37cb0b7..9eb17d2e 100644 --- a/app/Http/Controllers/PackageController.php +++ b/app/Http/Controllers/PackageController.php @@ -98,10 +98,14 @@ class PackageController extends Controller }, 'user.medical_center' => function ($query) { $query->select('id', 'name', 'address', 'phone_number'); + }, + 'userTransfer' => function ($query) { + $query->select('id','name','cell_number'); } ]); } ]); + return PackageResource::make($Package); } diff --git a/app/Http/Controllers/TransferItemController.php b/app/Http/Controllers/TransferItemController.php index c0c6ce77..427045ae 100644 --- a/app/Http/Controllers/TransferItemController.php +++ b/app/Http/Controllers/TransferItemController.php @@ -63,6 +63,7 @@ class TransferItemController extends Controller } if ( $Item->user_id != $request->user_id ) { $Item->transfers()->create( [ + "user_transfer_id" => auth()->user()->id, "user_id" => $request->user_id , "from_date" => Carbon::now() , "status" => StatusTypeEnum::APPROVED diff --git a/app/Http/Controllers/TransferPackageController.php b/app/Http/Controllers/TransferPackageController.php index 93705ec2..5afa103a 100644 --- a/app/Http/Controllers/TransferPackageController.php +++ b/app/Http/Controllers/TransferPackageController.php @@ -70,6 +70,7 @@ class TransferPackageController extends Controller //create transfer for the Package $Package->transfers()->create( [ + "user_transfer_id" => auth()->user()->id, "user_id" => $request->user_id , "from_date" => Carbon::now() , "status" => StatusTypeEnum::APPROVED diff --git a/app/Http/Resources/TransferResource.php b/app/Http/Resources/TransferResource.php index f0047b4d..242904a2 100644 --- a/app/Http/Resources/TransferResource.php +++ b/app/Http/Resources/TransferResource.php @@ -22,6 +22,8 @@ class TransferResource extends JsonResource 'status' => $this->status, 'user_id' => $this->user_id, 'user' => UserResource::make($this->whenLoaded('user')), + 'user_transfer_id' => $this->user_transfer_id, + 'userTransfer' => UserResource::make($this->whenLoaded('userTransfer')), 'transferable' => $this->resourceFinder(), 'created_at' => $this->created_at, 'updated_at' => $this->updated_at diff --git a/app/Transfer.php b/app/Transfer.php index d069e1dc..d648c3d5 100644 --- a/app/Transfer.php +++ b/app/Transfer.php @@ -9,13 +9,18 @@ class Transfer extends Model { use SoftDeletes; - public $fillable = [ 'user_id' , 'to_date' , 'from_date' , 'status' ]; + public $fillable = [ 'user_id' , 'to_date' , 'from_date' , 'status' , 'user_transfer_id' ]; public function user() { return $this->belongsTo( 'App\User' ); } + public function userTransfer() + { + return $this->belongsTo( 'App\User', 'user_transfer_id' ); + } + public function transferable() { return $this->morphTo(); diff --git a/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php b/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php new file mode 100644 index 00000000..394af088 --- /dev/null +++ b/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php @@ -0,0 +1,32 @@ +unsignedBigInteger('user_transfer_id')->nullable(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('transfers', function (Blueprint $table) { + $table->dropColumn('user_transfer_id'); + }); + } +} From c5473f5d9b7e5d754811e71946261cdf2cd2b598 Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Fri, 7 Jun 2024 04:27:55 +0330 Subject: [PATCH 07/10] fix getItem --- app/Http/Controllers/ItemController.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index 743aa956..1cef2fe8 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -8,6 +8,7 @@ use App\Http\Requests\StoreItemRequest; use App\Http\Resources\ItemResource; use App\Item; use App\Services\Media\MediaHelper; +use App\User; use Illuminate\Http\Request; use Packages\Messaging\src\Facades\MessageResponse; @@ -110,8 +111,11 @@ class ItemController extends Controller public function getItems() { + $userIds = User::where('medical_center_id', auth()->user()->medical_center->id)->pluck('id')->toArray(); + $Items = Item::where( "status" , StatusTypeEnum::APPROVED ) ->where( "package_id" , null ) + ->whereIn('creator_id', $userIds) ->orderByDesc( 'id' ) ->isNotRepaired() ->get(); From a3b6493003d3b6d8a867a84e948611551bfb2a5e Mon Sep 17 00:00:00 2001 From: mahdi1113 Date: Mon, 10 Jun 2024 15:51:08 +0330 Subject: [PATCH 08/10] fix migration --- app/Http/Controllers/ItemController.php | 4 +++- ...05_05_105944_add_user_transfer_id_to_transfers_table.php | 6 +++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/Http/Controllers/ItemController.php b/app/Http/Controllers/ItemController.php index 1cef2fe8..d1de06af 100644 --- a/app/Http/Controllers/ItemController.php +++ b/app/Http/Controllers/ItemController.php @@ -111,7 +111,9 @@ class ItemController extends Controller public function getItems() { - $userIds = User::where('medical_center_id', auth()->user()->medical_center->id)->pluck('id')->toArray(); + $user = auth()->user(); + $medicalCenterId = optional(optional($user)->medical_center)->id; + $userIds = User::where('medical_center_id', $medicalCenterId)->pluck('id')->toArray(); $Items = Item::where( "status" , StatusTypeEnum::APPROVED ) ->where( "package_id" , null ) diff --git a/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php b/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php index 394af088..6f6cd4c2 100644 --- a/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php +++ b/database/migrations/2024_05_05_105944_add_user_transfer_id_to_transfers_table.php @@ -1,8 +1,8 @@ Date: Wed, 12 Jun 2024 23:52:50 +0330 Subject: [PATCH 09/10] fix user index --- app/Http/Controllers/UserController.php | 42 ++++++++++++++----------- 1 file changed, 23 insertions(+), 19 deletions(-) diff --git a/app/Http/Controllers/UserController.php b/app/Http/Controllers/UserController.php index 0720ef6a..31549e40 100644 --- a/app/Http/Controllers/UserController.php +++ b/app/Http/Controllers/UserController.php @@ -26,26 +26,30 @@ class UserController extends Controller $medical_center_id = null; } - $Users = User::when( $request->has( 'name' ) && $request->name , function ( $query ) use ( $request ) { - $query->where( 'name' , 'LIKE' , '%' . $request->name . '%' ); - } ) - ->when( ( $request->has( 'fromPicker' ) && $request->fromPicker ) || ( $request->has( 'upToPicker' ) && $request->upToPicker ) , function ( $query ) use ( $request ) { - $from = ( $request->fromPicker ) ? date( $request->fromPicker . ' 00:00:00' ) : date( '2010-01-01' . ' 00:00:00' ); - $upTo = ( $request->upToPicker ) ? date( $request->upToPicker . ' 23:59:59' ) : date( 'Y-m-d' . ' 23:59:59' ); - return $query->whereBetween( 'created_at' , [ $from , $upTo ] ); - } ) - ->when( $request->has( 'cell_number' ) && $request->cell_number , function ( $query ) use ( $request ) { - $query->where( 'cell_number' , 'LIKE' , '%' . $request->cell_number . '%' ); - } ) - ->when( $request->has( 'role' ) && $request->role , function ( $query ) use ( $request ) { - $query->role( $request->role ); - } ) - ->when( $medical_center_id , function ( $query ) use ( $medical_center_id ) { - $query->where( 'medical_center_id' , $medical_center_id ); - } ) - ->with( [ 'medical_center' , 'roles' ] )->paginate( 10 ); + $Users = User::when($request->has('name') && $request->name, function ($query) use ($request) { + $query->where('name', 'LIKE', '%' . $request->name . '%'); + }) + ->when(($request->has('fromPicker') && $request->fromPicker) || ($request->has('upToPicker') && $request->upToPicker), function ($query) use ($request) { + $from = ($request->fromPicker) ? date($request->fromPicker . ' 00:00:00') : date('2010-01-01' . ' 00:00:00'); + $upTo = ($request->upToPicker) ? date($request->upToPicker . ' 23:59:59') : date('Y-m-d' . ' 23:59:59'); + return $query->whereBetween('created_at', [$from, $upTo]); + }) + ->when($request->has('cell_number') && $request->cell_number, function ($query) use ($request) { + $query->where('cell_number', 'LIKE', '%' . $request->cell_number . '%'); + }) + ->when($request->has('role') && $request->role, function ($query) use ($request) { + $query->role($request->role); + }) + ->when($medical_center_id, function ($query) use ($medical_center_id) { + $query->where('medical_center_id', $medical_center_id); + }) + ->whereDoesntHave('roles', function ($roleQuery) { + $roleQuery->where('name', 'Admin'); + }) + ->with(['medical_center', 'roles'])->paginate(10); + + return MessageResponse::data($Users); - return MessageResponse::data( $Users ); } public function store( StoreUserRequest $request ) From 4fbe7bc3bfdd1966427c2fac3bdbb9349421f331 Mon Sep 17 00:00:00 2001 From: saeid_01 Date: Mon, 29 Jul 2024 07:01:42 +0000 Subject: [PATCH 10/10] Update '.drone.yml' --- .drone.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.drone.yml b/.drone.yml index f5d6bc59..dcaf5d68 100644 --- a/.drone.yml +++ b/.drone.yml @@ -8,7 +8,7 @@ clone: # npm config set _auth token add command steps: - name: clone - image: docker-proxy.willaspace.com/alpine/git + image: docker.willaspace.com/repository/docker-hosted/alpine/git commands: - git clone $DRONE_GIT_HTTP_URL . - git checkout $DRONE_COMMIT