From 09f4a05609b4c4f9edd019e39db9e05a30761c9f Mon Sep 17 00:00:00 2001 From: Administrator Date: Fri, 10 Jul 2026 14:42:16 -0500 Subject: [PATCH] Actualizar frontend/src/pages/Rentabilidad.jsx --- frontend/src/pages/Rentabilidad.jsx | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/frontend/src/pages/Rentabilidad.jsx b/frontend/src/pages/Rentabilidad.jsx index da70a05..d02c384 100644 --- a/frontend/src/pages/Rentabilidad.jsx +++ b/frontend/src/pages/Rentabilidad.jsx @@ -4,6 +4,7 @@ import { api } from "../lib/api"; import { Loader, ErrorBox, Filters, Select } from "../components/UI"; import Modal from "../components/Modal"; import { useColumnasAjustables } from "../lib/useColumnasAjustables"; +import { setVistaActual, onRefrescar } from "../lib/vistaActual"; const MESES = ["ENERO","FEBRERO","MARZO","ABRIL","MAYO","JUNIO","JULIO","AGOSTO","SEPTIEMBRE","OCTUBRE","NOVIEMBRE","DICIEMBRE"]; const ANOS = [2024, 2025, 2026]; @@ -44,11 +45,16 @@ export default function Rentabilidad() { useEffect(() => { let activo = true; - setLoading(true); setError(null); - api.rentabilidad(ano, mes, sede, programa) - .then((res) => { if (activo) { setFilas(res.filas || []); setLoading(false); } }) - .catch((e) => { if (activo) { setError(e.message); setLoading(false); } }); - return () => { activo = false; }; + setVistaActual(`rentabilidad:${ano}|${mes}|${sede}|${programa}`); + const cargarSeguro = () => { + setLoading(true); setError(null); + api.rentabilidad(ano, mes, sede, programa) + .then((res) => { if (activo) { setFilas(res.filas || []); setLoading(false); } }) + .catch((e) => { if (activo) { setError(e.message); setLoading(false); } }); + }; + cargarSeguro(); + const off = onRefrescar(cargarSeguro); + return () => { activo = false; off(); }; }, [ano, mes, sede, programa]); const datos = useMemo(() => filas.filter((f)=>String(f[0]).toUpperCase()!=="TOTAL GENERAL"), [filas]);