Modelo de datos — <schema>.<tabla>
Estado: Propuesto | Activo | Obsoleto
Microservicio dueño: svc-...
Base de datos: core_sigfa | erp_sigfa | crm_sigfapro
Esquema: core.identidad
Tabla: mae_entidades
Última actualización: AAAA-MM-DD
ADR relacionados: ../../adr/NNNN-titulo.md (reemplazar con el enlace real)
Propósito y límites
Describe en 2-4 líneas qué representa la tabla, quién puede escribirla y qué
no pertenece a este microservicio. Indica el origen de cualquier referencia
externa.
Clasificación y tenencia
| Aspecto |
Valor |
| Tipo |
Catálogo (cat_), Maestro (mae_), Transacción (trx_), Relación (rel_), Configuración (cfg_) o Log (log_) |
Tiene empresa_id |
Sí; o No (justificar) |
| RLS |
Sí, política aislamiento_empresa; o No (justificar) |
| Soft delete |
Sí, deleted_at; o No (justificar) |
Columnas
| Columna |
Tipo PostgreSQL |
Nulo |
Default |
Regla / índice |
Descripción |
id |
UUID |
No |
gen_random_uuid() |
PK |
|
empresa_id |
BIGINT |
No |
|
RLS / FK interna si aplica |
|
created_at |
TIMESTAMPTZ |
No |
now() |
|
|
updated_at |
TIMESTAMPTZ |
No |
now() |
|
|
deleted_at |
TIMESTAMPTZ |
Sí |
|
Soft delete |
|
created_by |
UUID |
Sí |
|
|
|
updated_by |
UUID |
Sí |
|
|
|
Elimina las columnas estándar que no apliquen y deja una justificación en
"Clasificación y tenencia". Agrega las columnas propias de la entidad.
Constraints e índices
| Nombre |
Tipo |
Definición / propósito |
pk_<tabla> |
PK |
id |
uq_<tabla>_... |
UNIQUE |
|
ix_<tabla>_... |
Índice |
|
ck_<tabla>_... |
CHECK |
|
Relaciones internas
| Columna local |
Tabla destino |
Cardinalidad |
Regla |
<entidad>_id |
<schema>.<tabla> |
N:1 |
FK física dentro del mismo servicio |
Referencias externas
| Campo local |
Microservicio dueño |
Entidad externa |
Integración |
<entidad>_id |
svc-... |
<entidad> |
UUID + evento o endpoint; sin FK |
Elimina esta sección si no hay referencias externas. Nunca agregues una FK
física hacia otro microservicio.
RLS y auditoría
Indica cómo se aplica RLS, qué rol puede omitirla si existe y qué eventos o
acciones de auditoría genera. Si no aplica RLS o auditoría, justifícalo.
Artefactos de referencia
- SQL DDL:
../sql/ddl/<tabla>.sql (desde database/entidades/)
- SQLAlchemy:
../sqlalchemy/<entidad>.py (desde database/entidades/)
- Migración Alembic:
../alembic/versions/NNNN_<grupo>.py (desde database/entidades/)
- Migración operativa: enlace al repositorio de
svc-..., archivo y versión/commit.
Cambios relevantes
| Fecha |
Cambio |
ADR / migración |
| AAAA-MM-DD |
Creación de la entidad |
|