Fix Mapa Error (Sección Sin Datos)

This commit is contained in:
2025-10-17 13:55:38 -03:00
parent 45421f5c5f
commit 92c80f195b
4 changed files with 161 additions and 121 deletions

View File

@@ -252,12 +252,26 @@ export const getPanelElectoral = async (eleccionId: number, ambitoId: string | n
let url = ambitoId
? `/elecciones/${eleccionId}/panel/${ambitoId}`
: `/elecciones/${eleccionId}/panel`;
// Añadimos categoriaId como un query parameter
url += `?categoriaId=${categoriaId}`;
const { data } = await apiClient.get(url);
return data;
try {
const { data } = await apiClient.get(url);
return data;
} catch (error) {
if (axios.isAxiosError(error) && error.response?.status === 404) {
console.warn(`API devolvió 404 para ${url}. Devolviendo un estado vacío.`);
// Devolvemos el objeto vacío PERO con la nueva bandera activada
return {
ambitoNombre: 'Sin Datos',
mapaData: [],
resultadosPanel: [],
estadoRecuento: { participacionPorcentaje: 0, mesasTotalizadasPorcentaje: 0 },
sinDatos: true,
};
}
throw error;
}
};
export const getComposicionNacional = async (eleccionId: number): Promise<ComposicionNacionalData> => {
@@ -295,12 +309,12 @@ export const getMunicipiosPorDistrito = async (distritoId: string): Promise<Cata
};
export const getHomeResumen = async (eleccionId: number, distritoId: string, categoriaId: number): Promise<CategoriaResumenHome> => {
const queryParams = new URLSearchParams({
eleccionId: eleccionId.toString(),
distritoId: distritoId,
categoriaId: categoriaId.toString(),
});
const url = `/elecciones/home-resumen?${queryParams.toString()}`;
const { data } = await apiClient.get(url);
return data;
const queryParams = new URLSearchParams({
eleccionId: eleccionId.toString(),
distritoId: distritoId,
categoriaId: categoriaId.toString(),
});
const url = `/elecciones/home-resumen?${queryParams.toString()}`;
const { data } = await apiClient.get(url);
return data;
};