Configuración de Entregas — panel de administración¶
Panel donde quien administra la métrica configura el cálculo, lanza y revisa corridas y define el ajuste visual (historia 016 y spec 005). Lo que ven los usuarios está en Entregas.
| Ruta | /app/administracion/configuracion-entregas |
| Módulo de menú | Modulo ID 170 — Configuracion Entregas \| Administracion (padre 7), icono cilSettings; roles CEO y Desarrollador |
| Código | SitioLogiGho/src/app/views/administracion/configuracion-entregas/ |
| Backend | GET/PUT .../configuracion, GET/POST .../corridas, GET .../corridas/{id} (API) |
El panel no es la barrera
El menú oculta la opción a quien no tiene rol, pero el backend vuelve a validar el rol en cada llamada (403 si no es CEO ni Desarrollador).
El encabezado azul muestra la versión de la configuración, el alcance de la corrida programada y el mínimo de guías, con los atajos Recalcular datos y Ver corridas. Arriba a la derecha aparece "⏳ Corrida en curso…" solo cuando hay una corrida viva; sin corrida no se muestra nada.
Pestaña Parámetros¶
Todos los cambios aplican desde la próxima corrida; no reescriben lo ya calculado. Se guardan con Guardar parámetros (un PUT validado por el backend) o se descartan con Restablecer.
- Alcance de la corrida programada: todo el histórico, últimos 6 o últimos 3 meses. La corrida del domingo 8:00 a. m. lo usa.
- Muestra mínima de guías por transportadora (− / +, de 5 en 5, entre 1 y 200). El botón ? explica qué es: la cantidad mínima de guías con resultado final para que un porcentaje sea confiable; por debajo, el porcentaje se ve en gris como "sin muestra" y no cuenta en la mejor opción ni en los rankings. Trae un ejemplo (con 30, 8 de 10 guías entregadas dan 80 % pero no se recomienda).
- Transportadoras que cuentan: informativo (sale del mapa de la configuración). Las excluidas (XCARGO) se listan aparte y TCC no se muestra hasta que esté en la base.
- Buscar un estado: un buscador filtra a la vez las tres listas (sin importar mayúsculas ni tildes). Cada lista muestra de 24 en 24 con "Ver más (N restantes)", y los estados ya marcados en esa lista salen primero para que nunca queden ocultos.
- Clasificación de estados. La lista sale de la auditoría de la última corrida finalizada (
estadosObservados, sumando transportadoras) más los estados ya configurados: - Estados que cuentan como "entregado" y como "devuelto": cada chip muestra su cantidad de guías y, al pasar el cursor, qué transportadoras lo reportan. Un estado no puede estar en las dos listas: al estar en una, el chip de la otra se bloquea.
- Estados que no cuentan (tránsito, anuladas…): solo informativo. Para que cuente, se marca arriba.
- Estados que se resuelven por fecha (Archivada): no se escoge; se resuelve sola (solo fecha de entrega → entrega; solo fecha de devolución → devolución; ambas o ninguna → no cuenta).
- Estado de la configuración: versión, nombre de quien la actualizó (no su id de Cognito) y fecha legible.
Pestaña Corridas¶
Dos tarjetas separadas:
- Lanzar una corrida: alcance de la corrida manual y botón Lanzar corrida (con confirmación). Solo puede haber una a la vez (409 si hay otra viva).
- Historial de corridas: las últimas 20, con inicio en texto legible hora de Bogotá ("29 de oct de 2026 a las 11:54 a. m."), origen, alcance, estado, guías leídas y duración ("1 min 53 s"). Se refresca cada 10 s mientras hay una en curso.
- Una corrida
EN_CURSOde más de 20 minutos se muestra como CAÍDA y no bloquea el botón de lanzar. - Ver detalle abre la auditoría de esa corrida: entregas, devoluciones, % de ciudad reconocida, quién la solicitó (por nombre), cuándo terminó, las guías que no cuentan por motivo (traducido) y las ciudades que no se reconocieron (hasta 50, con departamento y guías). Si la corrida falló, muestra el error.
Pestaña Ajuste de porcentajes¶
Define cómo se elevan los porcentajes que ven los usuarios (regla y parámetros en Ajuste visual).
- Cómo funciona la fórmula: una flecha ▾ abre y cierra la explicación paso a paso, con tabla de ejemplo y la advertencia del tope.
- Estado del ajuste: Apagado (porcentaje real) o Activo. Apagado, los controles se desactivan; el checkbox Solo para calcular permite probar valores sin aplicar nada.
- Porcentaje mínimo a mostrar (1 a 99) y modo (Por ciudad / Global).
- Ciudades: todas usan el general (casilla General marcada). Al desmarcarla se habilita Mínimo propio (1 a 99) con un ✔ verde. Atajos: Usar el general / Personalizar las que se ven (siguen al buscador) y Restablecer ciudades. Ver Ajuste visual.
- Guardar ajuste (el mismo PUT de la configuración) y Restablecer. Es inmediato: al guardar sale "Ajuste guardado. Los usuarios lo ven al recargar Entregas." (el ajuste es solo del front; no espera una corrida, a diferencia de los parámetros de cálculo).
- Vista previa real → mostrado: tabla por ciudad y transportadora, con la casilla y el mínimo propio de cada ciudad, con el porcentaje real tachado y el mostrado en negrita, buscador de ciudad o departamento y "Ver más". Incluye la cantidad de celdas con muestra y los promedios real y mostrado. La vista previa usa los valores sin guardar y funciona aunque el ajuste esté apagado.
Qué se retiró¶
El boceto original traía las pestañas Comparar, Vista del usuario e Historial (borrador, publicación versionada, restaurar). El backend de esta historia no lo soporta, así que se quitaron del panel (y sus endpoints y estilos). Si se retoma, necesita colecciones y endpoints nuevos (backlog M-132 a M-140).
Cómo está hecho¶
ConfiguracionEntregaService(services/): solo los endpoints que existen; adapta PascalCase/camelCase.utils/configuracion.utils.ts(con tests): clasificación de estados (construirEstados,asignarClase: Archivada no se asigna), fechas y duraciones legibles hora Bogotá, motivos en español, transportadoras visibles ycorridaVigente(RN-08: unaEN_CURSOde más de 20 min está caída).- Correcciones del 2026-10-29: el id de la corrida llegaba vacío (el adaptador leía
Iden vez deCorridaId) y el % de ciudad resuelta no se leía (el campo esPorcentajeCiudadResuelta).