feat(monday): obra, atrasos, hitos, saldos y flujo de escrituras desde Reporte_EstatusVenta

- Script sync-obra-estatus.py (idempotente, --dry-run, retry/backoff):
  parsea ESTATUS OBRA, SENDA-ACT-AGO2026, SENDA/SOLE DG, Diagonal 38 y
  las hojas de ventas; mapea a Unidades vía maestro-unidades.json
- Board Unidades: +12 columnas (% avance obra, meses atraso, contratista,
  clave catastral, no. oficial, vendedor, broker, venc. autorización,
  fecha entrega obra, 4 checkboxes de hitos documentales) — 147 items
  actualizados (DIAGONAL 38/38, SENDA 109/142)
- Board nuevo 'Flujo Escrituras' (18429252054): 32 items mayo–ago/2026
  por proyecto/semana con escrituras e ingreso
- Board nuevo 'Saldos a Favor' (18429252069): 7 pendientes (Estanza/Sole)
- Receta nativa documentada: recordatorio 7 días antes de Venc.
  autorización al coordinador
- SOLE y MUTUO no existen como inventario en Monday: sus datos de obra
  se reportan como saltados (no se crean unidades)
This commit is contained in:
2026-09-01 21:59:45 +00:00
parent ccd4ca78ca
commit 11213b92c7
4 changed files with 609 additions and 1 deletions

View File

@@ -89,7 +89,23 @@ Backup: `scripts/backup.sh` (cron sugerido `17 2 * * *`).
## Monday.com
Workspace `Frasa-CAS`. Tableros: Contactos, Desarrollos, Unidades (inventario importado), Leads, Oportunidades, Apartado, Ventas. Los board IDs están en `.env.example`. Webhook: `POST /api/webhooks/monday` (responde el challenge de activación).
Workspace `Frasa-CAS`. Tableros: Contactos, Desarrollos, Unidades (inventario importado), Leads, Oportunidades, Apartado, Ventas, Flujo Escrituras, Saldos a Favor. Los board IDs están en `.env.example`. Webhook: `POST /api/webhooks/monday` (responde el challenge de activación).
### Board Unidades — columnas de obra/estatus
Alimentadas por `api-gateway/scripts/sync-obra-estatus.py` desde el `Reporte_EstatusVenta.xlsx` del cliente (idempotente, `--dry-run` disponible; ver docstring del script):
- `% Avance obra`, `Meses atraso` (numbers), `Contratista`, `Clave catastral`, `No. oficial`, `Vendedor`, `Broker` (text), `Venc. autorización` (date).
- `Fecha entrega obra` (date): la columna original `Fecha entrega` ya traía datos de habitabilidad, por eso se creó una nueva.
- Hitos documentales (checkbox): `Cert. Gas`, `TO / C4`, `Régimen inscrito`, `Lista avalúo`. Se encienden cuando la fecha del hito en el Excel ya pasó; el script nunca los apaga.
- Nota: en `No. oficial` / `Clave catastral` el Excel del cliente trae fechas programadas (no números oficiales); se cargan como texto ISO tal cual.
### Boards operativos nuevos
- **Flujo Escrituras**: un item por mes/semana/proyecto con `Escrituras` (numbers) e `Ingreso` (numbers) del Flujo Calendario del cliente. Idempotencia por nombre único (`AGOSTO SEM 3 AL 7 - SOLE`).
- **Saldos a Favor**: name `CLIENTE / UNIDAD`; columnas `Desarrollo` (status), `Unidad` (text), `Monto` (numbers), `Estado` (Pendiente/Devuelto), `Comentario`. Idempotencia por Unidad+Desarrollo.
Las unidades SOLE y MUTUO no existen en el board Unidades: el script las reporta como saltadas (sus vendedor/broker/venc. autorización no se cargan por ahora).
## Pendientes conocidos