from fastapi import APIRouter, Depends from sqlalchemy.orm import Session from typing import List, Optional from app.config.database import get_db from app.controllers.auth.access_controller import AccessController from app.schemas.auth.access_schema import AccessResponse from app.middleware.auth_middleware import get_current_user, require_access from app.models.auth.user_model import User router = APIRouter() @router.get("/get", response_model=List[AccessResponse]) def get_accesses( category: Optional[str] = None, db: Session = Depends(get_db), current_user: User = Depends(get_current_user), _ = Depends(require_access("admin.role.read")), ): return AccessController.get_all_accesses(db, category)