feature/permisos-reference-data

This commit is contained in:
2026-05-06 08:13:53 -06:00
parent c96184da90
commit 73b2eb222e
45 changed files with 437 additions and 154 deletions

View File

@@ -0,0 +1,25 @@
from typing import Callable
from core.database import get_core_db
from core.security import get_current_user, validate_access_to_resource
from fastapi import Depends, Query
from sqlalchemy.orm import Session
def require_ref_view(permission_code: str) -> Callable:
"""
Dependency factory to enforce reference-data view permissions per company.
Endpoints using this dependency must receive `company_id` in query params.
"""
async def _dep(
company_id: int = Query(..., description="Company ID"),
db: Session = Depends(get_core_db),
current_user: dict = Depends(get_current_user),
) -> bool:
validate_access_to_resource(db, company_id, current_user, [permission_code])
return True
return _dep