feat(ti/soporte): homologa Soporte técnico con Infraestructura — Tickets...
feat(ti/soporte): homologa Soporte técnico con Infraestructura — Tickets rediseñado, calidad de información y «Editar en GLPI»
Vista /ti/sistemas/soporte y su espejo /oae/sistemas/soporte, según la revisión del área.
Contenedor
- Anatomía de Infraestructura: cabecera → barra de filtros (Portafolio · Empresa · Año · Mes · propios) → CintaPestanas → contenido. Sale el switch de dos botones.
- Tickets y Activo Fijo abren en el año y el mes en curso; si el mes aún no tiene datos, el último mes con datos y un aviso. En Activo Fijo, Año y Mes acotan por fecha de alta: la tarjeta, el contador y un aviso lo dicen («Limpiar» devuelve el inventario completo).
Tickets (carpeta nueva tickets/)
- Seis tarjetas en dos filas de tres, todas con vista detalle (total → listado completo; tema más solicitado y empresas → ranking con barras en línea, que sustituye al desglose de barras blancas).
- Secciones: tendencia de 12 meses, requerimientos vs incidencias, tiempo de resolución, estado, día × hora, canal de origen, distribución y detalle con ficha lateral.
- «Calidad de información en osTicket», restringida al módulo ti_tickets_calidad (admin y oramirez).
- El rojo de «abierto > 30 días» escrito en código se va: ahora es el vencido según osTicket.
Activo Fijo
- Tarjetas OaeKpiCard (nueva: Cómputo depreciado), «Antigüedad del cómputo» año por año, leyendas revisadas contra los datos del 12-oct (fecha de compra 60 %, raíz de GLPI 0, estatus «Otro»).
- «Editar en GLPI» en la ficha: front/.form.php?id=<glpi_id> (el ID sólo es único por tipo); la URL sólo viaja a quien tiene el módulo ti_activo_fijo_glpi.
Piezas compartidas (_internal)
- FichaLateral (380 px, renglón de origen sombreado), bannerQa (reduce el aviso de QA con la ficha abierta), pilaEscape (Escape por capas), graficas (CajaTooltip, BarrasRanking, DonaLeyenda), canon: Aviso, estiloFilaSeleccionada y capaTooltip (el tooltip de las donas ya no queda debajo de la cifra del centro).
Backend (routers/ti.py, retrocompatible)
- tickets-summary: tiempo de resolución, tramos, canal, día × hora, tendencia de 12 meses, corte de carga.
- tickets-detalle: drills resolucion/dia_hora/dia/hora/vencido, filtro falta, orden=recientes, límite 5,000; cláusulas compartidas con la calidad (_tickets_contexto, _tickets_clausulas).
- tickets-calidad (nuevo, módulo ti_tickets_calidad); activos-summary: por_anios y otro; activos-detalle: drill antiguedad, itemtype y glpi_url por permiso (GLPI_URL por entorno).
- Módulos ti_tickets_calidad y ti_activo_fijo_glpi en _migrate_ti_rbac y en la migración 20261012_ti_modulos_tickets_calidad_y_glpi.sql (los otorga a admin y oramirez).
Verificado: tsc y npm run build de portal_ti y del OAE (copia _ti_dashboards refrescada), look & feel sin hallazgos, ci_validate_models, capturas en claro y oscuro, tablas sin scroll a 1,366 px y celdas de calidad que cuadran con el detalle que abren.
Co-Authored-By: Claude Opus 5.5 noreply@anthropic.com