Confirmar egreso como unico evento para cerrar internacion y liberar cama

This commit is contained in:
2026-08-12 00:09:56 +00:00
parent 12f0a7f1e7
commit cce8a0b4c8
2 changed files with 11 additions and 5 deletions
+8 -2
View File
@@ -358,17 +358,23 @@ const agregarCama = useCallback(async (cama: Omit<Cama, 'id'>) => {
return;
}
try {
// Si hay una internación activa asociada a esta cama, remover la asociación en el servidor
const activeInternacion = state.internaciones.find(i => i.camaId === id && i.activa);
if (activeInternacion) {
await apiCall('PUT', `/internaciones/${activeInternacion.id}`, { camaId: '' });
}
await apiCall('DELETE', `/camas/${id}`);
setState(prev => ({
...prev,
camas: prev.camas.filter(c => c.id !== id),
internaciones: prev.internaciones.map(i => i.camaId === id ? { ...i, activa: false } : i),
internaciones: prev.internaciones.map(i => i.camaId === id ? { ...i, camaId: undefined } : i),
}));
} catch (err) {
console.error('Error al eliminar cama:', err);
throw err;
}
}, [state.currentUser, apiCall]);
}, [state.currentUser, state.internaciones, apiCall]);
// Acciones de internaciones
const iniciarInternacion = useCallback(async (internacion: Omit<Internacion, 'id' | 'activa'>) => {