fix: solución de bloqueos y estandarización de permisos

This commit is contained in:
2026-04-27 10:47:30 -05:00
parent fa3cbb4d0a
commit 5c2a84e95d
312 changed files with 13889 additions and 7911 deletions

View File

@@ -32,7 +32,7 @@ async def list_drivers(
db: Session = Depends(get_core_db),
current_user: dict = Depends(get_current_user),
):
tenant_id = validate_access_to_resource(db, company_id, current_user)
tenant_id = validate_access_to_resource(db, company_id, current_user, required_permissions=["drivers.view"])
drivers = DriverService.list_drivers(db, str(company_id), tenant_id)
total = len(drivers)
@@ -56,7 +56,7 @@ async def read_driver(
db: Session = Depends(get_core_db),
current_user: dict = Depends(get_current_user),
):
tenant_id = validate_access_to_resource(db, company_id, current_user)
tenant_id = validate_access_to_resource(db, company_id, current_user, required_permissions=["drivers.view"])
driver = DriverService.get_driver_by_key_and_line(
db, transporter_key, line, str(company_id), tenant_id
)
@@ -73,7 +73,7 @@ async def create_driver(
):
# Validar acceso a la empresa del cuerpo
tenant_id = validate_access_to_resource(
db, driver_data.company_id, current_user
db, driver_data.company_id, current_user, required_permissions=["drivers.create"]
)
tk = (driver_data.transporter_key or "").strip()
# Buscar transportista: primero exacto, luego ignorando mayúsculas
@@ -124,7 +124,7 @@ async def update_driver(
db: Session = Depends(get_core_db),
current_user: dict = Depends(get_current_user),
):
tenant_id = validate_access_to_resource(db, company_id, current_user)
tenant_id = validate_access_to_resource(db, company_id, current_user, required_permissions=["drivers.edit"])
try:
driver = DriverService.update_driver(
db,
@@ -152,7 +152,7 @@ async def delete_driver(
db: Session = Depends(get_core_db),
current_user: dict = Depends(get_current_user),
):
tenant_id = validate_access_to_resource(db, company_id, current_user)
tenant_id = validate_access_to_resource(db, company_id, current_user, required_permissions=["drivers.delete"])
driver = DriverService.delete_driver(
db, transporter_key, line, str(company_id), tenant_id
)