Permiso vistas implementados

This commit is contained in:
2026-03-24 13:57:54 -06:00
parent 7b00f1336d
commit 94ca24e00e
15 changed files with 1037 additions and 405 deletions

View File

@@ -14,24 +14,99 @@ from app.core.database import Base, GUID
CLIENT_PERMISSIONS = [
# Permisos funcionales
"view_tickets",
"create_tickets",
"close_tickets",
"view_reports",
"manage_tenant_users",
"create_issues",
# Permisos de navegación - cliente
"nav:tickets",
"nav:organization",
"nav:usuarios",
]
INTERNAL_PERMISSIONS = [
# Permisos de navegación - interno
"nav:tickets",
"nav:users",
"nav:tenants",
"nav:categories",
"nav:systems",
"nav:sla",
"nav:audit",
"nav:reports",
]
DEFAULT_PERMISSIONS = {
"CLIENT_ADMIN": {p: True for p in CLIENT_PERMISSIONS},
"CLIENT_ADMIN": {
# Funcionales — todo ON
"view_tickets": True,
"create_tickets": True,
"close_tickets": True,
"view_reports": True,
"manage_tenant_users": True,
"create_issues": True,
# Navegación cliente — todo ON
"nav:tickets": True,
"nav:organization": True,
"nav:usuarios": True,
},
"CLIENT_USER": {
# Funcionales
"view_tickets": True,
"create_tickets": True,
"close_tickets": False,
"view_reports": False,
"manage_tenant_users": False,
"create_issues": False,
}
# Navegación cliente
"nav:tickets": True,
"nav:organization": False,
"nav:usuarios": False,
},
"ADMIN": {
# Navegación interna — todo ON
"nav:tickets": True,
"nav:users": True,
"nav:tenants": True,
"nav:categories": True,
"nav:systems": True,
"nav:sla": True,
"nav:audit": True,
"nav:reports": True,
},
"SUPPORT_MANAGER": {
"nav:tickets": True,
"nav:users": True,
"nav:tenants": False,
"nav:categories": True,
"nav:systems": True,
"nav:sla": True,
"nav:audit": True,
"nav:reports": True,
},
"AGENT": {
"nav:tickets": True,
"nav:users": False,
"nav:tenants": False,
"nav:categories": False,
"nav:systems": False,
"nav:sla": False,
"nav:audit": False,
"nav:reports": False,
},
"AUDITOR": {
"nav:tickets": True,
"nav:users": False,
"nav:tenants": False,
"nav:categories": False,
"nav:systems": False,
"nav:sla": False,
"nav:audit": True,
"nav:reports": True,
},
}