Commit 026f4741 by Denys Tito

docs: quitar la referencia a la libreta del CLAUDE.md

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
parent 98aba5fd
...@@ -66,7 +66,7 @@ Users: `internal/infrastructure/database/postgres.UserQuery`, one row per `matri ...@@ -66,7 +66,7 @@ Users: `internal/infrastructure/database/postgres.UserQuery`, one row per `matri
Balotarios: `internal/infrastructure/database/postgres.BalotarioQuery`, un documento por matrícula activa del período 14 / ciclo 28 (~35 700), con los 8 períodos pedagógicos (M1, B1, M2, B2, M3, B3, M4, B4) siempre presentes y sus cursos anidados (`cursos: []` si no hay nada configurado). Los cursos salen de `academico.ac_balotario_aula` por el aula actual **más** los balotarios que el alumno ya respondió (por si cambió de aula); **no** se filtra por `grado_id`, porque las aulas multigrado y "PRE" reciben a propósito los balotarios de otro grado. Leído por `postgres.BalotarioReader` hacia `entities.Balotario`: colección `c_balotario`, archivo `deleted_c_balotario`, `IDField` = `matricula_id`, `StateID` = 6. Lo consume `GET /enrollments/:id/balotarios` de intranet-so-be. Detalle y hallazgos de datos en `intranet-padres-react/docs/backend-queries.md`. Balotarios: `internal/infrastructure/database/postgres.BalotarioQuery`, un documento por matrícula activa del período 14 / ciclo 28 (~35 700), con los 8 períodos pedagógicos (M1, B1, M2, B2, M3, B3, M4, B4) siempre presentes y sus cursos anidados (`cursos: []` si no hay nada configurado). Los cursos salen de `academico.ac_balotario_aula` por el aula actual **más** los balotarios que el alumno ya respondió (por si cambió de aula); **no** se filtra por `grado_id`, porque las aulas multigrado y "PRE" reciben a propósito los balotarios de otro grado. Leído por `postgres.BalotarioReader` hacia `entities.Balotario`: colección `c_balotario`, archivo `deleted_c_balotario`, `IDField` = `matricula_id`, `StateID` = 6. Lo consume `GET /enrollments/:id/balotarios` de intranet-so-be. Detalle y hallazgos de datos en `intranet-padres-react/docs/backend-queries.md`.
Comunicados: `internal/infrastructure/database/postgres.ComunicadoQuery`, un documento por comunicado (`intranet.comunicado` + `intranet.comunicado_destino`) con su regla de audiencia, no una fila por alumno: `alcance_tipo` (1 todos, 2 sedes, 3 aulas, 4 personalizado) y los arreglos `sede_ids`, `aula_ids` y `matricula_ids`. Se sincronizan también los comunicados vencidos o retirados, porque intranet-so-be filtra por `vigente_hasta` al leer y así retirar uno surte efecto al instante. Leído por `postgres.ComunicadoReader` hacia `entities.Comunicado`: colección `c_comunicados`, archivo `deleted_c_comunicados`, `IDField` = `comunicado_id`, `StateID` = 11 (el 10 lo usa la rama `pipelines-libreta`). Requiere índice único sobre `comunicado_id` en Mongo. Trismegisto dispara `POST /api/v1/sync/comunicados/upsert` con `{"id": <comunicado_id>}` al enviar o retirar. El DDL y las funciones están en `intranet-so-be/migrations/004_comunicados.sql`. Comunicados: `internal/infrastructure/database/postgres.ComunicadoQuery`, un documento por comunicado (`intranet.comunicado` + `intranet.comunicado_destino`) con su regla de audiencia, no una fila por alumno: `alcance_tipo` (1 todos, 2 sedes, 3 aulas, 4 personalizado) y los arreglos `sede_ids`, `aula_ids` y `matricula_ids`. Se sincronizan también los comunicados vencidos o retirados, porque intranet-so-be filtra por `vigente_hasta` al leer y así retirar uno surte efecto al instante. Leído por `postgres.ComunicadoReader` hacia `entities.Comunicado`: colección `c_comunicados`, archivo `deleted_c_comunicados`, `IDField` = `comunicado_id`, `StateID` = 11. Requiere índice único sobre `comunicado_id` en Mongo. Trismegisto dispara `POST /api/v1/sync/comunicados/upsert` con `{"id": <comunicado_id>}` al enviar o retirar. El DDL y las funciones están en `intranet-so-be/migrations/004_comunicados.sql`.
## Índices de Mongo ## Índices de Mongo
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment