Ir al contenido

Control Data

Generada 2026-08-13. Fuente: exploración de código de controlgmg-v2 + observación manual del navegador (QA).

No es un dominio propio — es una capa de reportes/KPIs analíticos que consulta los modelos de otros módulos (Unit/Tractor, Trailer/Remolque, Tire/Llanta, Staff/Personal). Backend específico: app/Http/Controllers/ControlData/Trailers/TrailersControlDataTireController.php (confirmado en investigación previa de Remolques) expone datos de llantas por remolque; hay controllers hermanos equivalentes para Tractores/Llantas/Personal (no confirmados uno por uno en esta pasada — “por verificar”).

Backend confirmado (de investigación previa del módulo Remolques):

GET /control-data/trailers/paginated ControlData\Trailers\TrailersControlDataTireController@getPaginated
GET /control-data/trailers/{trailer}/tires ControlData\Trailers\TrailersControlDataTireController@getHistoryTires

Las rutas equivalentes para tractores/llantas/personal no se confirmaron línea por línea — “por verificar” (probablemente routes/control-data/units/..., routes/control-data/tires/..., routes/control-data/staff/... siguiendo el mismo patrón).

Importante: el nav del sidebar “Control Data” que se ve al navegar visualmente (href aparente /remolques#) es solo el trigger del acordeón (#collapse-control-data) — el contenido real vive en 3 rutas Vue independientes, cada una con sub-rutas KPI:

Ruta Componente raíz Sub-rutas Permiso
/control-data/tractores components/ControlData/Units/ControlData.vue kpi-1, kpi-1/graficos, kpi-2, kpi-2/graficos can('view-control-data')
/control-data/remolques components/ControlData/Trailers/TrailerControlData.vue kpi-1 (solo una, sin kpi-2 todavía) can('view-control-data')
/control-data/llantas components/ControlData/Tire/TireControlData.vue kpi-1, kpi-1/graficos can('view-control-data')
/personal/lista-de-asistencia components/ControlData/Staff/StaffControlData.vue kpi-1 (staff-attendance-list-kpi1), kpi-2 (staff-attendance-list-kpi2) can(['view-attendance-list', 'view-admins-attendance-list']) — nota: esta ruta vive bajo /personal/, no bajo /control-data/, aunque el componente es del mismo árbol ControlData/Staff/

Fuente: resources/js/routes.js líneas 355-449. Todas cargan sus componentes de detalle vía lazy import (webpackChunkName: "control-data-kpi*").

  • view-control-data (PermissionConst::viewControlData, app/Core/Security/PermissionConst.php:442) — gobierna Tractores/Remolques/Llantas.
  • view-attendance-list / view-admins-attendance-list — gobiernan la vista de asistencia de Personal (rama aparte, con redirectByRole para mandar a cada rol a su propio KPI por defecto).

Selectores usados por el tester (riesgo de fragilidad)

Sección titulada «Selectores usados por el tester (riesgo de fragilidad)»

No hay specs de Playwright para este módulo todavía — solo Remolques los tiene por ahora. El link del sidebar “Control Data” NO navega directamente (es un acordeón) — cualquier test debe navegar por URL directa a /control-data/<tractores|remolques|llantas> en vez de intentar clickear el link del menú, igual que se resolvió para Remolques (ver remolques.md, sección de selectores, sobre el link “Remolques” fuera del viewport).

No se navegó a ninguna de las 4 rutas de Control Data durante el recorrido manual del menú — solo se confirmó que el link “Control Data” existe en el sidebar. Contenido visual pendiente de observación directa.