diff --git a/src/components/Equipo_Computo/Pregunta1.tsx b/src/components/Equipo_Computo/Pregunta1.tsx index 965a639..cd021f4 100644 --- a/src/components/Equipo_Computo/Pregunta1.tsx +++ b/src/components/Equipo_Computo/Pregunta1.tsx @@ -57,8 +57,9 @@ export default function Pregunta1() { } axios - .get( + .post( `${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_tipoUso`, + ["EN DESUSO", "EN USO"], { headers: { Authorization: `Bearer ${token}` } } ) .then((res) => { @@ -161,10 +162,13 @@ export default function Pregunta1() { return (
-
Censo de equipos de cómputo
+
+ Censo de equipos de cómputo +
- Número de equipos de cómputo por cada categoría y perfil de usuario. + Número de equipos de cómputo por cada categoría y perfil de usuario. +
diff --git a/src/components/Equipo_Computo/Pregunta2.tsx b/src/components/Equipo_Computo/Pregunta2.tsx index 28dd513..3c78b86 100644 --- a/src/components/Equipo_Computo/Pregunta2.tsx +++ b/src/components/Equipo_Computo/Pregunta2.tsx @@ -4,7 +4,6 @@ import { useState, useEffect } from "react"; import axios from "axios"; import styles from "./pregunta2.module.scss"; import Cookies from "js-cookie"; -import style from "styled-jsx/style"; import ToggleButton from "../Toggle/ToggleButton"; type OsEntry = { os: string; @@ -60,11 +59,15 @@ export default function Pregunta2() { // ✔ GET AXIOS PROFESIONAL useEffect(() => { const token = Cookies.get("token"); - const headers = {Authorization: `Bearer ${token}`}; + const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_sistemasOperativos`,{headers}) + .post( + `${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_sistemasOperativos`, + ["EN DESUSO", "EN USO"], + { headers } + ) .then((res) => { - const json = res.data; + const json = res.data; const formatted: PlatformData = { "pc-desktop": transformPlatform(json[0]), @@ -85,13 +88,15 @@ export default function Pregunta2() { return (
-
Censo de equipos de cómputo - Sitema Operativo
+
+ Censo de equipos de cómputo - Sitema Operativo +
- Número de equipos de cómputo por cada categoría y perfil de usuario. + Número de equipos de cómputo por cada categoría y perfil de usuario. +
-
{/* Tabs */}
diff --git a/src/components/Equipo_Computo/Pregunta3.tsx b/src/components/Equipo_Computo/Pregunta3.tsx index fee195d..b7d5830 100644 --- a/src/components/Equipo_Computo/Pregunta3.tsx +++ b/src/components/Equipo_Computo/Pregunta3.tsx @@ -35,7 +35,10 @@ const PLATFORM_LABELS: Record = { }; // Mapeo de "uso" del JSON a campos en ProcessorEntry -const USO_TO_FIELD: Record> = { +const USO_TO_FIELD: Record< + string, + keyof Omit +> = { ALUMNO: "alumnos", PROFESOR: "profesores", "TÉCNICO ACADEMICO": "tecnicos", @@ -44,7 +47,9 @@ const USO_TO_FIELD: Record(); for (const item of rawArray) { @@ -85,12 +90,24 @@ function transformProcessorData(rawArray: { procesador: string; uso: string; tot // Calculamos los totales generales const grandTotal: ProcessorEntry = { tipo: "Total", - alumnos: rows.reduce((sum, r) => sum + parseInt(r.alumnos || "0"), 0).toString(), - profesores: rows.reduce((sum, r) => sum + parseInt(r.profesores || "0"), 0).toString(), - tecnicos: rows.reduce((sum, r) => sum + parseInt(r.tecnicos || "0"), 0).toString(), - investigadores: rows.reduce((sum, r) => sum + parseInt(r.investigadores || "0"), 0).toString(), - administrativos: rows.reduce((sum, r) => sum + parseInt(r.administrativos || "0"), 0).toString(), - total: rows.reduce((sum, r) => sum + parseInt(r.total || "0"), 0).toString(), + alumnos: rows + .reduce((sum, r) => sum + parseInt(r.alumnos || "0"), 0) + .toString(), + profesores: rows + .reduce((sum, r) => sum + parseInt(r.profesores || "0"), 0) + .toString(), + tecnicos: rows + .reduce((sum, r) => sum + parseInt(r.tecnicos || "0"), 0) + .toString(), + investigadores: rows + .reduce((sum, r) => sum + parseInt(r.investigadores || "0"), 0) + .toString(), + administrativos: rows + .reduce((sum, r) => sum + parseInt(r.administrativos || "0"), 0) + .toString(), + total: rows + .reduce((sum, r) => sum + parseInt(r.total || "0"), 0) + .toString(), isTotal: true, }; @@ -112,7 +129,11 @@ export default function Pregunta3_2() { const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_procesador`, { headers }) + .post( + `${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_procesador`, + ["EN DESUSO", "EN USO"], + { headers } + ) .then((res) => { const json = res.data; // array de 5 arreglos @@ -134,28 +155,34 @@ export default function Pregunta3_2() { }); }, []); - if (loading) return
Cargando datos...
; + if (loading) + return
Cargando datos...
; - if (!data) return
Error al cargar los datos.
; + if (!data) + return
Error al cargar los datos.
; const currentData = data[activeTab]; return (
-
Censo de equipos de cómputo - Plataforma y tipo procesador
+
+ Censo de equipos de cómputo - Plataforma y tipo procesador +
- Cantidad de población beneficiada por plataforma y tipo de procesador. + Cantidad de población beneficiada por plataforma y tipo de procesador. +
-
- +
{/* Pestañas verticales */}
{Object.entries(PLATFORM_LABELS).map(([key, label]) => (
); -} \ No newline at end of file +} diff --git a/src/components/Equipo_Computo/Pregunta7.tsx b/src/components/Equipo_Computo/Pregunta7.tsx index ff66ef8..a3337d5 100644 --- a/src/components/Equipo_Computo/Pregunta7.tsx +++ b/src/components/Equipo_Computo/Pregunta7.tsx @@ -21,8 +21,7 @@ export default function Pregunta7() { { nombre: "Impresión", valores: ["0.00", "0.00", "0.00", "0.00"] }, { nombre: "Digitalización", - valores: ["0.00", "0.00", "0.00", "0.00" - ], + valores: ["0.00", "0.00", "0.00", "0.00"], }, ]); @@ -70,12 +69,7 @@ export default function Pregunta7() { const pct = (v: number) => ((v / total) * 100).toFixed(2); - return [ - pct(menores2), - pct(entre2_3), - pct(entre4_5), - pct(mayores6), - ]; + return [pct(menores2), pct(entre2_3), pct(entre4_5), pct(mayores6)]; }; // ------------------------------ @@ -85,8 +79,9 @@ export default function Pregunta7() { const token = Cookies.get("token"); axios - .get( + .post( `${api_url}/equipos/reporte/contar_perifericos_antiguedad`, + ["EN DESUSO", "EN USO"], { headers: { Authorization: `Bearer ${token}` }, } @@ -116,7 +111,8 @@ export default function Pregunta7() {
- Antigüedad que tienen los equipos periféricos del área universitaria. + Antigüedad que tienen los equipos periféricos del área universitaria. +
diff --git a/src/components/Equipo_Computo/Pregunta9.tsx b/src/components/Equipo_Computo/Pregunta9.tsx index c2a5835..48f3be6 100644 --- a/src/components/Equipo_Computo/Pregunta9.tsx +++ b/src/components/Equipo_Computo/Pregunta9.tsx @@ -10,7 +10,7 @@ import ToggleButton from "../Toggle/ToggleButton"; type AntiguedadItem = { antiguedad: string | null; total: string; - porcentaje: string; + porcentaje: string; }; type ApiResponse = { @@ -21,16 +21,24 @@ type ApiResponse = { export default function Pregunta9() { const [datos, setDatos] = useState([ - { nombre: "Computadoras de Escritorio", valores: ["0.00", "0.00", "0.00", "0.00","0.00"] }, - { nombre: "Computadoras Portátiles", valores: ["0.00", "0.00", "0.00", "0.00","0.00"] }, - { nombre: "Alto Rendimiento", valores: ["0.00", "0.00", "0.00", "0.00","0.00"] }, + { + nombre: "Computadoras de Escritorio", + valores: ["0.00", "0.00", "0.00", "0.00", "0.00"], + }, + { + nombre: "Computadoras Portátiles", + valores: ["0.00", "0.00", "0.00", "0.00", "0.00"], + }, + { + nombre: "Alto Rendimiento", + valores: ["0.00", "0.00", "0.00", "0.00", "0.00"], + }, ]); const [loading, setLoading] = useState(true); // Transforma los datos del backend al formato de 4 columnas con % calculados const transformarDatos = (items: AntiguedadItem[]): string[] => { - let menores2 = 0; let entre2_3 = 0; let entre4_6 = 0; @@ -54,20 +62,28 @@ export default function Pregunta9() { case "ENTRE 6 Y MAYORES": mayores6 += total; break; - // Cualquier otro valor (aunque no debería haber) lo meteríamos en mayores6 - default:notfound += total; break; + // Cualquier otro valor (aunque no debería haber) lo meteríamos en mayores6 + default: + notfound += total; + break; } } - const totalEquipo = menores2 + mayores6+ entre2_3 + entre4_6 + notfound; + const totalEquipo = menores2 + mayores6 + entre2_3 + entre4_6 + notfound; if (totalEquipo === 0) { - return ["0.00", "0.00", "0.00", "0.00","0.00"]; + return ["0.00", "0.00", "0.00", "0.00", "0.00"]; } const pct = (valor: number) => ((valor / totalEquipo) * 100).toFixed(2); - return [pct(menores2), pct(entre2_3), pct(entre4_6), pct(mayores6),pct(notfound)]; + return [ + pct(menores2), + pct(entre2_3), + pct(entre4_6), + pct(mayores6), + pct(notfound), + ]; }; useEffect(() => { @@ -79,9 +95,13 @@ export default function Pregunta9() { } axios - .get(`${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_antiguedad`, { - headers: { Authorization: `Bearer ${token}` }, - }) + .post( + `${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/tipoEquipos_antiguedad`, + ["EN DESUSO", "EN USO"], + { + headers: { Authorization: `Bearer ${token}` }, + } + ) .then((res) => { const { escritorios, portatiles, altoRendimiento } = res.data; @@ -117,7 +137,9 @@ export default function Pregunta9() { return (
-
Censo de equipos de cómputo - Generales
+
+ Censo de equipos de cómputo - Generales +
{/* Pregunta intro (servidores) */} {/*
Indique cuantos servidores son utilizados en ambientes productivos y si en ellos se almacenan datos personales. @@ -127,7 +149,8 @@ export default function Pregunta9() { {/* Pregunta 9: Antigüedad */}
- Antigüedad que tienen los equipos de cómputo del área universitaria. + Antigüedad que tienen los equipos de cómputo del área universitaria. +
@@ -162,7 +185,11 @@ export default function Pregunta9() {
))} - 100.1 ? "total-error" : ""}`}> + 100.1 ? "total-error" : "" + }`} + > {total.toFixed(2)}% @@ -172,8 +199,7 @@ export default function Pregunta9() {
- - +
); -} \ No newline at end of file +} diff --git a/src/components/Equipo_Computo/pregunta10.tsx b/src/components/Equipo_Computo/pregunta10.tsx index bb5140b..e8955f2 100644 --- a/src/components/Equipo_Computo/pregunta10.tsx +++ b/src/components/Equipo_Computo/pregunta10.tsx @@ -24,9 +24,13 @@ export default function Pregunta10() { } axios - .get(`${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/garantia`, { - headers: { Authorization: `Bearer ${token}` }, - }) + .post( + `${process.env.NEXT_PUBLIC_API_URL}/equipos/reporte/garantia`, + ["EN DESUSO", "EN USO"], + { + headers: { Authorization: `Bearer ${token}` }, + } + ) .then((res) => { const [escritorio, portatil, altoRendimiento] = res.data; @@ -46,17 +50,14 @@ export default function Pregunta10() { }, []); if (loading) { - return ( -
- Cargando datos de garantía... -
- ); + return
Cargando datos de garantía...
; } return ( <>
- Equipos de cómputo que tienen garantía de proveedoro. + Equipos de cómputo que tienen garantía de proveedoro. +
@@ -72,20 +73,12 @@ export default function Pregunta10() {
- +
- +
@@ -103,4 +96,4 @@ export default function Pregunta10() {
); -} \ No newline at end of file +} diff --git a/src/components/Perifericos/Pregunta1EP.tsx b/src/components/Perifericos/Pregunta1EP.tsx index 72eb5a5..b606382 100644 --- a/src/components/Perifericos/Pregunta1EP.tsx +++ b/src/components/Perifericos/Pregunta1EP.tsx @@ -41,9 +41,13 @@ export default function Pregunta1EP() { const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${api_url}/equipos/reporte/equipos_impesion_group/impresoras`, { - headers, - }) + .post( + `${api_url}/equipos/reporte/equipos_impesion_group/impresoras`, + ["EN DESUSO", "EN USO"], + { + headers, + } + ) .then((res) => { const data = res.data; @@ -121,7 +125,10 @@ export default function Pregunta1EP() { Censo de equipos periféricos - Equipo de Impresion
-
Equipos de impresión.
+
+ Equipos de impresión. + +
{/* Columna 1 */} diff --git a/src/components/Perifericos/Pregunta2EP.tsx b/src/components/Perifericos/Pregunta2EP.tsx index f92a71b..3797927 100644 --- a/src/components/Perifericos/Pregunta2EP.tsx +++ b/src/components/Perifericos/Pregunta2EP.tsx @@ -31,9 +31,13 @@ export default function Pregunta2EP() { const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${api_url}/equipos/reporte/contar_periferico_tipoUso/impresoras`, { - headers, - }) + .post( + `${api_url}/equipos/reporte/contar_periferico_tipoUso/impresoras`, + ["EN DESUSO", "EN USO"], + { + headers, + } + ) .then((res) => { const data = res.data; @@ -98,7 +102,8 @@ export default function Pregunta2EP() { return (
- Equipos de impresión de acuerdo con la población universitaria. + Equipos de impresión de acuerdo con la población universitaria. +
diff --git a/src/components/Perifericos/Pregunta4EP.tsx b/src/components/Perifericos/Pregunta4EP.tsx index f5cac7b..938caf1 100644 --- a/src/components/Perifericos/Pregunta4EP.tsx +++ b/src/components/Perifericos/Pregunta4EP.tsx @@ -26,9 +26,13 @@ export default function Pregunta4EP() { const token = Cookies.get("token"); const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${api_url}/equipos/reporte/equipos_impesion_group/dijitales`, { - headers, - }) + .post( + `${api_url}/equipos/reporte/equipos_impesion_group/dijitales`, + ["EN DESUSO", "EN USO"], + { + headers, + } + ) .then((res) => { const data = res.data; @@ -77,7 +81,8 @@ export default function Pregunta4EP() {
- Número de equipos de digitalización. + Número de equipos de digitalización. +
diff --git a/src/components/Perifericos/Pregunta5EP.tsx b/src/components/Perifericos/Pregunta5EP.tsx index ccae8d4..522b80c 100644 --- a/src/components/Perifericos/Pregunta5EP.tsx +++ b/src/components/Perifericos/Pregunta5EP.tsx @@ -32,9 +32,13 @@ export default function Pregunta5EP() { const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${api_url}/equipos/reporte/contar_periferico_tipoUso/dijtales`, { - headers, - }) + .post( + `${api_url}/equipos/reporte/contar_periferico_tipoUso/dijtales`, + ["EN DESUSO", "EN USO"], + { + headers, + } + ) .then((res) => { const data = res.data; @@ -99,7 +103,8 @@ export default function Pregunta5EP() {
Número de equipos de digitalización de acuerdo con la población - universitaria. + universitaria. +
diff --git a/src/components/Perifericos/Pregunta7EP.tsx b/src/components/Perifericos/Pregunta7EP.tsx index 03e1d57..0b4044e 100644 --- a/src/components/Perifericos/Pregunta7EP.tsx +++ b/src/components/Perifericos/Pregunta7EP.tsx @@ -25,7 +25,11 @@ export default function Pregunta7EP() { const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${api_url}/equipos/reporte/contar_laboratorio`, { headers }) + .post( + `${api_url}/equipos/reporte/contar_laboratorio`, + ["EN DESUSO", "EN USO"], + { headers } + ) .then((res) => { const formato: Dato[] = res.data.map((item: any) => ({ nombre: item.laboratorio || "SIN NOMBRE", @@ -75,15 +79,20 @@ export default function Pregunta7EP() { const startItem = (currentPage - 1) * recordsPerPage + 1; const endItem = Math.min(startItem + recordsPerPage - 1, sortedData.length); const totalLaboratorios = data.reduce( - (sum, item) => sum + (item.nombre != "NO_APLICA" ? Number(item.cantidad):0), + (sum, item) => + sum + (item.nombre != "NO_APLICA" ? Number(item.cantidad) : 0), 0 ); - + return (
- -
Censo de equipos de cómputo - Laboratorio
-
Numero de laboratorios.
+
+ Censo de equipos de cómputo - Laboratorio +
+
+ Numero de laboratorios. + +
diff --git a/src/components/Perifericos/Pregunta8.tsx b/src/components/Perifericos/Pregunta8.tsx index a95370a..0c61bf6 100644 --- a/src/components/Perifericos/Pregunta8.tsx +++ b/src/components/Perifericos/Pregunta8.tsx @@ -25,7 +25,11 @@ export default function Pregunta8() { const headers = { Authorization: `Bearer ${token}` }; axios - .get(`${api_url}/equipos/reporte/contar_proyecto`, { headers }) + .post( + `${api_url}/equipos/reporte/contar_proyecto`, + ["EN DESUSO", "EN USO"], + { headers } + ) .then((res) => { const formato: Dato[] = res.data.map((item: any) => ({ nombre: item.proyecto || "SIN PROYECTO", @@ -75,15 +79,20 @@ export default function Pregunta8() { const startItem = (currentPage - 1) * recordsPerPage + 1; const endItem = Math.min(startItem + recordsPerPage - 1, sortedData.length); const totalLaboratorios = data.reduce( - (sum, item) => sum + (item.nombre != "NO_APLICA" ? Number(item.cantidad):0), + (sum, item) => + sum + (item.nombre != "NO_APLICA" ? Number(item.cantidad) : 0), 0 ); return (
- -
Censo de equipos de cómputo - Proyectos
-
Numero de proyectos.
+
+ Censo de equipos de cómputo - Proyectos +
+
+ Numero de proyectos. + +
Mostrar