Contexto del Sistema
GexCom opera en el Centro de Servicios Judiciales de Bello como sistema de gestion de comunicaciones judiciales.
Diagrama de Contexto (C4 Level 1)
graph TB
subgraph CSJ["Centro de Servicios Judiciales de Bello"]
subgraph GexCom["Sistema GexCom"]
GUI["Streamlit GUI\n:8501"]
API["FastAPI API\n:8000"]
DB[("PostgreSQL 16\n(Docker)")]
GUI --- DB
API --- DB
end
ADMIN["Administrador\n(CRUD completo,\nusuarios, reportes)"]
NOTIF["Notificador\n(procesos, sujetos,\nnotificaciones)"]
ADMIN -->|navega| GUI
NOTIF -->|navega| GUI
end
subgraph External["Sistemas Externos"]
SMTP["Servidor SMTP\n(Email corporativo)"]
META["Meta Graph API\n(WhatsApp Business)"]
INT["Sistema Integrador\n/ Aplicaciones terceras"]
end
subgraph Clients["Destinatarios"]
PARTE["Partes del proceso\n(Demandantes, Demandados,\nTestigos...)"]
end
API -->|REST + JWT| INT
GUI -->|SMTP TLS| SMTP
GUI -->|HTTPS| META
SMTP -->|email| PARTE
META -->|WhatsApp| PARTE
classDef system fill:#1565C0,color:#fff,stroke:#0D47A1
classDef external fill:#455A64,color:#fff,stroke:#263238
classDef user fill:#2E7D32,color:#fff,stroke:#1B5E20
class GUI,API,DB system
class SMTP,META,INT external
class ADMIN,NOTIF,PARTE user
Actores
| Actor |
Rol |
Acceso |
| Administrador |
Gestiona usuarios, reportes, configuracion completa |
GUI (todas las paginas) |
| Notificador |
Registra procesos, gestiona sujetos, crea y envia notificaciones |
GUI (paginas asignadas) |
| Integrador |
Sistemas externos que consumen la API REST |
API REST + JWT |
Entornos de Despliegue
| Entorno |
URL |
Base de Datos |
Estado |
| Local desarrollo |
localhost:8501 / :8000 |
SQLite |
Funcional |
| Docker (PG) |
localhost:8501 / :8000 / :5050 |
PostgreSQL 16 |
Funcional |
| Produccion |
— |
PostgreSQL 16 |
Pendiente |
Docker Compose
Servicios:
- gexcom-streamlit :8501 (GUI)
- gexcom-api :8000 (API REST — pendiente wiring en Docker)
- postgres :5432 (PostgreSQL 16)
- pgadmin :5050 (Admin PG)
Restricciones Legales
- Ley 1581/2012 (Habeas Data): PII de partes procesales enmascarado en UI y excluido de logs
- Inmutabilidad de AuditLog: Los registros de auditoria no pueden ser modificados ni eliminados
- RBAC: Solo usuarios con rol ADMINISTRADOR pueden gestionar usuarios y ver reportes completos