diff --git a/web-v2/src/pages/ActsPage.tsx b/web-v2/src/pages/ActsPage.tsx index a62ef03..04a3908 100644 --- a/web-v2/src/pages/ActsPage.tsx +++ b/web-v2/src/pages/ActsPage.tsx @@ -8,17 +8,23 @@ import { useOperationalContext } from '../context/OperationalContext'; import { DocumentCenterTabs } from '../features/documents/DocumentCenterTabs'; import { inspectionActStatusClass, inspectionActStatusLabel } from '../features/inspections/inspectionActPresentation'; import { OperationalFilters } from '../features/inspections/OperationalFilters'; -import { listInspectionActsGlobal } from '../lib/api'; -import type { InspectionActListItem, InspectionActStatus, PageMeta } from '../lib/api'; +import type { PageMeta } from '../lib/api'; +import { + listInspectionActsGlobalF4, + type InspectionActListItemF4, + type InspectionActStatusF4, +} from '../lib/inspectionActF4Api'; import { formatDate } from '../lib/format'; -const statuses: Array<{ value: InspectionActStatus | ''; label: string }> = [ +const statuses: Array<{ value: InspectionActStatusF4 | ''; label: string }> = [ { value: '', label: 'Todos los estados' }, { value: 'DRAFT', label: 'Borrador' }, - { value: 'READY', label: 'Lista para cierre' }, - { value: 'CLOSED', label: 'Cerrada' }, - { value: 'RECTIFIED', label: 'Rectificada' }, + { value: 'LOCKED', label: 'Bloqueada · esperando manifestación' }, + { value: 'SEALED', label: 'Sellada' }, { value: 'CANCELLED', label: 'Cancelada' }, + { value: 'READY', label: 'Lista para cerrar · legado' }, + { value: 'CLOSED', label: 'Cerrada · legado' }, + { value: 'RECTIFIED', label: 'Rectificada · legado' }, ]; function contextLabel(items: Array<{ name: string }>, empty: string): string { @@ -32,12 +38,15 @@ function contextLabel(items: Array<{ name: string }>, empty: string): string { export function ActsPage() { const [params, setParams] = useSearchParams(); const operationalContext = useOperationalContext(); - const [items, setItems] = useState([]); + const [items, setItems] = useState([]); const [meta, setMeta] = useState({ page: 1, pageSize: 25, total: 0, totalPages: 0 }); const [loading, setLoading] = useState(true); const [error, setError] = useState(''); const search = params.get('search') ?? ''; - const status = (params.get('status') ?? '') as InspectionActStatus | ''; + const rawStatus = params.get('status') ?? ''; + const status = statuses.some((item) => item.value === rawStatus) + ? rawStatus as InspectionActStatusF4 | '' + : ''; const year = params.get('year') ?? ''; const companyId = operationalContext.companyId || params.get('companyId') || ''; const areaId = operationalContext.areaId || params.get('areaId') || ''; @@ -50,7 +59,7 @@ export function ActsPage() { useEffect(() => { setLoading(true); setError(''); - listInspectionActsGlobal({ page, pageSize: 25, search, status, year: year ? Number(year) : '', companyId, areaId, inspectorId, dateFrom, dateTo }) + listInspectionActsGlobalF4({ page, pageSize: 25, search, status, year: year ? Number(year) : '', companyId, areaId, inspectorId, dateFrom, dateTo }) .then((response) => { setItems(response.data); setMeta(response.meta); @@ -108,7 +117,7 @@ export function ActsPage() { {act.visit.code} {act.findingCount} {inspectionActStatusLabel(act.status)} - {act.report ? {act.report.code}{act.report.pdfStatus === 'READY' ? 'PDF disponible' : 'PDF pendiente'} : act.status === 'CLOSED' ? Pendiente de emisión : } + {act.report ? {act.report.code}{act.report.pdfStatus === 'READY' ? 'PDF disponible' : 'PDF pendiente'} : ['SEALED', 'CLOSED'].includes(act.status) ? Pendiente de emisión : } )}
{meta.total ? `${(page - 1) * meta.pageSize + 1}–${Math.min(page * meta.pageSize, meta.total)} de ${meta.total}` : '0 resultados'}