This commit is contained in:
Saeed Vaziry
2025-05-15 14:23:26 +03:00
parent a81e9b18b7
commit b8ba83949b
47 changed files with 1536 additions and 980 deletions

View File

@ -0,0 +1,36 @@
<?php
namespace App\Http\Controllers;
use App\Http\Resources\UserResource;
use App\Models\User;
use Illuminate\Http\Request;
use Illuminate\Http\Resources\Json\ResourceCollection;
use Spatie\RouteAttributes\Attributes\Get;
use Spatie\RouteAttributes\Attributes\Middleware;
use Spatie\RouteAttributes\Attributes\Prefix;
#[Prefix('users')]
#[Middleware(['auth'])]
class UserController extends Controller
{
#[Get('/', name: 'users')]
public function index(Request $request): ResourceCollection
{
$this->authorize('viewAny', User::class);
$this->validate($request, [
'query' => [
'nullable',
'string',
],
]);
$users = User::query()->where('name', 'like', "%{$request->input('query')}%")
->orWhere('email', 'like', "%{$request->input('query')}%")
->take(10)
->get();
return UserResource::collection($users);
}
}