From fec91b02c0e7680a627fa14eb23388ef041d3c77 Mon Sep 17 00:00:00 2001 From: santiago Date: Fri, 7 Nov 2025 00:56:04 +0100 Subject: [PATCH] Nuevos estilos en las vistas --- .../administrador/casos_especiales/page.tsx | 13 ++- src/components/administrador/archivo.tsx | 2 +- .../administrador/editar-servicio.tsx | 4 +- .../informacion-caso-especial.tsx | 94 ++++++++++++++++++- .../administrador/tabla-casos-especiales.tsx | 18 +++- .../administrador/titulo-status.tsx | 8 +- src/components/servicio-social-tabla.tsx | 10 +- 7 files changed, 137 insertions(+), 12 deletions(-) diff --git a/src/app/administrador/casos_especiales/page.tsx b/src/app/administrador/casos_especiales/page.tsx index 08fdfc3..3e716fb 100644 --- a/src/app/administrador/casos_especiales/page.tsx +++ b/src/app/administrador/casos_especiales/page.tsx @@ -1,12 +1,23 @@ +'use client' import TablaCasosEspeciales from "@/components/administrador/tabla-casos-especiales"; import BotonRegresar from "@/components/boton-regresar"; +import { useEffect, useState } from "react"; export default function CasosEspeciales() { + const [admin, setAdmin] = useState<{ idTipoUsuario: number; token?: string } | null>(null); + + useEffect(() => { + const idTipoUsuario = Number(localStorage.getItem('idTipoUsuario') ?? 0); + const token = localStorage.getItem('token') ?? undefined; + if (!idTipoUsuario) return; // no logueado + setAdmin({ idTipoUsuario, token }); + }, []); + return(
- +
); } \ No newline at end of file diff --git a/src/components/administrador/archivo.tsx b/src/components/administrador/archivo.tsx index 6c7241f..bf3d7b7 100644 --- a/src/components/administrador/archivo.tsx +++ b/src/components/administrador/archivo.tsx @@ -147,7 +147,7 @@ export default function Archivo({ return (
-
Ver {title}
+
Ver {title}
{ - const data = { servicioid }; + const data = localStorage.getItem('idServicio');//{ servicioid }; try { updateIsLoading(true); @@ -211,7 +211,7 @@ export default function EditarServicio({ useEffect(() => { const id = Number(localStorage.getItem("idServicio")); console.log("ID Servicio para editar:", id); - if (!id) router.push("/admin"); + if (!id) router.push("/administrador"); else { setServicioid(id); console.log("idServicio seteado:", id); diff --git a/src/components/administrador/informacion-caso-especial.tsx b/src/components/administrador/informacion-caso-especial.tsx index 79cb18f..93d2531 100644 --- a/src/components/administrador/informacion-caso-especial.tsx +++ b/src/components/administrador/informacion-caso-especial.tsx @@ -56,11 +56,100 @@ export default function InformacionCasoEspecial({ alumno }: Props) { return (
{/* Título */} -

{alumno.Status?.status}

+

{alumno.Status?.status}

Datos personales

+
+ +

{alumno.Usuario?.usuario || ''}

+
+ +
+ +

{alumno.Usuario?.nombre || ''}

+
+ +
+ +

{alumno.Carrera?.carrera || ''}

+
+ +
+ +

{alumno.creditos || ''}

+
+ +
+ +

{alumno.correo || ''}

+
+ +
+ +

{fecha(alumno.fechaNacimiento)}

+
+ +
+ +

{alumno.direccion}

+
+ +
+ +

{alumno.telefono}

+
+ + {alumno.motivo && ( +
+ +

{ + alumno.motivo === "1" + ? "Tercera edad" + : alumno.motivo === "2" + ? "Capacidades diferentes" + : "" + }

+
+ )} + + {alumno.institucion && ( +
+ +

{alumno.institucion}

+
+ )} + + {alumno.dependencia && ( +
+ +

{alumno.dependencia}

+
+ )} + +
+ +

{fecha(alumno.fechaInicio)}

+
+ +
+ +

{fecha(alumno.fechaFin)}

+
+ +
+ +

{fecha(alumno.createdAt)}

+
+ + + + {/* Campos */} +{/* + + // Informacino de antes + Número de Cuenta: @@ -117,7 +206,7 @@ export default function InformacionCasoEspecial({ alumno }: Props) { - {alumno.motivo && ( + {alumno.motivo && ( Motivo: @@ -174,6 +263,7 @@ export default function InformacionCasoEspecial({ alumno }: Props) { +*/} {(alumno.Status?.idStatus === 11 || alumno.Status?.idStatus === 12) && (
diff --git a/src/components/administrador/tabla-casos-especiales.tsx b/src/components/administrador/tabla-casos-especiales.tsx index 4eace16..3ed33b2 100644 --- a/src/components/administrador/tabla-casos-especiales.tsx +++ b/src/components/administrador/tabla-casos-especiales.tsx @@ -8,6 +8,7 @@ import { Button, Col, Form, FormGroup, FormLabel, FormSelect, InputGroup, Row, S import ServicioSocialTabla from "../servicio-social-tabla"; import { ServicioSocialResponse } from "@/types/responses"; import { FaInfoCircle, FaSchool, FaUser } from "react-icons/fa"; +import { useRouter } from "next/navigation"; interface Admin { idTipoUsuario?: number; @@ -45,6 +46,9 @@ interface CasosEspecialesResponse { } export default function TablaCasosEspeciales({ admin, imprimirError }: Props) { + // Para el redirecionamiento + const router = useRouter(); + const [isLoading, setIsLoading] = useState(false); const [page, setPage] = useState(1); const [total, setTotal] = useState(0); @@ -247,15 +251,27 @@ export default function TablaCasosEspeciales({ admin, imprimirError }: Props) { {/* Tabla + + onPageChange={onPageChange} + columnasResponsable={admin?.idTipoUsuario === 1} + */} { + try { + router.push(`/responsable/${path}`) + } catch (error) { + console.error('Error al manejar accion de fila', error) + } + }} /> diff --git a/src/components/administrador/titulo-status.tsx b/src/components/administrador/titulo-status.tsx index dbb96af..fce5823 100644 --- a/src/components/administrador/titulo-status.tsx +++ b/src/components/administrador/titulo-status.tsx @@ -14,10 +14,10 @@ export default function TituloStatus({ status }: Props) { console.log('idStatus en TituloStatus:', idStatus); return ( -
- {idStatus === 1 &&

Confirmar el pre-registro del alumno

} - {idStatus === 4 &&

Término

} - {idStatus === 5 &&

Validar el término del alumno

} +
+ {idStatus === 1 &&

Confirmar el pre-registro del alumno

} + {idStatus === 4 &&

Término

} + {idStatus === 5 &&

Validar el término del alumno

}
); } diff --git a/src/components/servicio-social-tabla.tsx b/src/components/servicio-social-tabla.tsx index 8b70d06..6dfe657 100644 --- a/src/components/servicio-social-tabla.tsx +++ b/src/components/servicio-social-tabla.tsx @@ -77,11 +77,19 @@ export default function ServicioSocialTabla({ localStorage.setItem("idServicio", String(row.idServicio)); } + // esta mal esta logica if ("idCasoEspecial" in row && row.idCasoEspecial) { localStorage.setItem("idCasoEspecial", String(row.idCasoEspecial)); } - router.push("/administrador/servicio"); + if ( row.idServicio ) { + router.push("/administrador/servicio"); + } else if ("idCasoEspecial" in row && row.idCasoEspecial) { + router.push('/administrador/casos_especiales/caso_especial') + } + // Hacer validacion para saber que id fue y redireccionar + //router.push("/administrador/servicio"); + //router.push('/administrador/casos_especiales/caso_especial') } else if ( row.idServicio ||