| 123456789101112131415161718192021222324252627 |
- <?php
- namespace App\Http\Controllers;
- use App\Http\Resources\UserAccessLogResource;
- use App\Services\UserAccessLogService;
- use Illuminate\Http\JsonResponse;
- use Illuminate\Http\Request;
- class UserAccessLogController extends Controller
- {
- public function __construct(protected UserAccessLogService $service) {}
- public function index(Request $request): JsonResponse
- {
- $filters = $request->only(['type', 'date_from', 'date_to']);
- $perPage = min((int) $request->get('per_page', 10), 100);
- $paginator = $this->service->getAllPaginated($filters, $perPage);
- return $this->successResponse(payload: [
- 'data' => UserAccessLogResource::collection($paginator->items()),
- 'total' => $paginator->total(),
- 'from' => $paginator->firstItem() ?? 0,
- 'to' => $paginator->lastItem() ?? 0,
- ]);
- }
- }
|