Configurar estado inicial de pendientes por defecto en no resueltos y refrescar estado al cargar Pendientes de Sala

This commit is contained in:
2026-08-11 21:17:07 +00:00
parent 7c8fe6a0a3
commit 51ae114a1e
2 changed files with 30 additions and 3 deletions
+23
View File
@@ -1437,9 +1437,32 @@ const actualizarInternacion = useCallback(async (internacionId: string, datos: P
return true;
}, []);
const refreshState = useCallback(async () => {
try {
const res = await fetch(`${API_BASE}/state`);
if (!res.ok) throw new Error('no state');
const body = await res.json();
if (body) {
setState(prev => ({
...prev,
...body,
estudiosComplementarios: body.estudiosComplementarios || prev.estudiosComplementarios,
interconsultas: body.interconsultas || prev.interconsultas,
atb: body.atb || prev.atb,
glucemias: body.glucemias || prev.glucemias,
movimientosIndicaciones: body.movimientosIndicaciones || prev.movimientosIndicaciones,
pendientes: body.pendientes || prev.pendientes,
}));
}
} catch (err) {
console.error('Error refreshing state:', err);
}
}, []);
return {
...state,
isLoaded,
refreshState,
setVista,
agregarPaciente,
actualizarPaciente,
+7 -3
View File
@@ -1,4 +1,4 @@
import { useState } from 'react';
import { useState, useEffect } from 'react';
import {
ListTodo,
Search,
@@ -45,12 +45,16 @@ export function PendientesSala({
getPacienteById,
getCamaById,
}: PendientesSalaProps) {
const { currentUser } = useHospitalStore();
const { currentUser, refreshState } = useHospitalStore();
const [busqueda, setBusqueda] = useState('');
const [filtroCategoria, setFiltroCategoria] = useState<string>('todos');
const [filtroEstado, setFiltroEstado] = useState<string>('todos');
const [filtroEstado, setFiltroEstado] = useState<string>('pendiente');
const [filtroFechaProgramada, setFiltroFechaProgramada] = useState<string>('');
useEffect(() => {
refreshState();
}, [refreshState]);
// Active internaciones map for quick lookup
const internacionesActivas = internaciones.filter(i => i.activa);
const activeInternacionMap = new Map<string, Internacion>();