diff --git a/web-v2/src/pages/DashboardPage.tsx b/web-v2/src/pages/DashboardPage.tsx index 0c25a26..6964149 100644 --- a/web-v2/src/pages/DashboardPage.tsx +++ b/web-v2/src/pages/DashboardPage.tsx @@ -3,8 +3,10 @@ import { Link } from 'react-router'; import { useAuth } from '../auth/AuthContext'; import { Alert, LoadingBlock, errorMessage } from '../components/Feedback'; import { Icon } from '../components/Icon'; -import { getDashboardSummary, getHealth } from '../lib/api'; -import type { DashboardSummary, HealthResponse } from '../lib/api'; +import { getHealth } from '../lib/api'; +import type { HealthResponse } from '../lib/api'; +import { getDashboardSummaryF4 } from '../lib/dashboardF4Api'; +import type { DashboardSummaryF4 } from '../lib/dashboardF4Api'; import { actionLabel, formatDate, formatDateOnly } from '../lib/format'; function todayDate(): string { @@ -15,19 +17,19 @@ function todayDate(): string { export function DashboardPage() { const { user, hasPermission } = useAuth(); - const [summary, setSummary] = useState(null); + const [summary, setSummary] = useState(null); const [health, setHealth] = useState(null); const [error, setError] = useState(''); useEffect(() => { - Promise.all([getDashboardSummary(), getHealth()]) + Promise.all([getDashboardSummaryF4(), getHealth()]) .then(([dashboard, service]) => { setSummary(dashboard); setHealth(service); }) .catch((requestError) => setError(errorMessage(requestError))); }, []); return
-
RESUMEN OPERATIVO

Buen día, {user?.firstName}

Lo que requiere atención y las próximas tareas de inspección.

+
RESUMEN OPERATIVO

Buen día, {user?.firstName}

Lo que requiere atención en Inspecciones, Hallazgos, verificaciones e Informes.

{health?.status === 'ok' ? 'Sistema operativo' : 'Verificando sistema'}
@@ -37,23 +39,23 @@ export function DashboardPage() {
INSPECCIONES PLANIFICADAS{summary.counts.plannedInspections}Pendientes de iniciar
VERIFICACIONES VENCIDAS{summary.counts.overdueControls}Requieren control operativo
-
HALLAZGOS ABIERTOS{summary.counts.openFindings}Seguimiento activo
-
REGISTROS A VALIDAR{summary.counts.assetsNeedValidation}Datos pendientes de revisión
+
HALLAZGOS ABIERTOS{summary.counts.openFindings}Seguimiento técnico activo
+
ACTAS SIN INF{summary.counts.sealedActsWithoutReport}Actas selladas pendientes de Informe
-
INVENTARIOS Y SEGUIMIENTO

Estado general

+
INVENTARIOS Y DOCUMENTOS

Estado general

-
INVENTARIO{summary.counts.totalAssets}Elementos registrados en los inventarios
+
INVENTARIO{summary.counts.totalAssets}Elementos registrados
SIN UBICACIÓN{summary.counts.assetsWithoutGeometry}Sin geometría registrada
-
ESPERANDO RESPUESTA{summary.counts.awaitingCompanyResponse}{summary.counts.overdueCompanyResponses} vencidas · {summary.counts.companyResponsesDueNext7Days} vencen en 7 días
-
PRÓXIMAS VERIFICACIONES{summary.counts.controlsNext30Days}{summary.counts.awaitingVerificationSchedule} pendientes de programar
+
INF EN PREPARACIÓN{summary.counts.reportsWorking}{summary.counts.reportsOfficialized} oficializados en GEDO
+
PRÓXIMAS VERIFICACIONES{summary.counts.controlsNext30Days}{summary.counts.findingsWithoutControlDate} Hallazgos abiertos sin fecha de control
{hasPermission('inspection_findings.read') &&
-
AGENDA

Próximos controles

Hallazgos que tienen una fecha de verificación programada.

Ver hallazgos
+
AGENDA

Próximos controles

Hallazgos abiertos con una fecha de verificación definida.

Planificar verificaciones
{summary.upcomingControls.length === 0 &&

Todavía no hay controles programados.

} - {summary.upcomingControls.map((control) =>
{control.title}

{control.assetCode} · {control.assetName}

)} + {summary.upcomingControls.map((control) =>
{control.title}

{control.assetCode} · {control.assetName} · {control.actCode}

)}
} @@ -66,7 +68,7 @@ export function DashboardPage() {
ACCESOS RÁPIDOS

Administración

- InventariosInventario operativo organizado por empresa + InventariosInventario operativo organizado por empresa y área {hasPermission('asset_types.read') && Configuración de InventariosTipos y campos configurables} {hasPermission('users.read') && UsuariosAccesos y roles}