feat: frontend alumnos sam-pruebas (RUT+clave, rendir y mis resultados)

This commit is contained in:
Nurfog committed 2026-09-28 10:58:45 -03:00
commit e6d283e184
26 files changed
+2555

No files matched your search

+27
View File
@@ -0,0 +1,27 @@
import { NextResponse } from "next/server";
const COOKIE = "sam_pruebas_alumno";
/** Login alumno: reenvía a SAM.API POST /api/sam-pruebas/login-alumno
* (valida idAlumno + Contrasena en sige_sam_v3 o sige_sam_empresa). */
export async function POST(req: Request) {
const body = await req.json().catch(() => ({}));
const base = process.env.API_URL || process.env.NEXT_PUBLIC_API_URL || "http://localhost:5000";
const r = await fetch(`${base}/api/sam-pruebas/login-alumno`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ idAlumno: (body.idAlumno || "").trim(), password: body.password || "" })
});
const data = await r.json().catch(() => null);
if (!r.ok || !data?.success) {
return NextResponse.json({ success: false, message: "Credenciales inválidas" }, { status: 401 });
}
const res = NextResponse.json({ success: true, user: data.user });
res.cookies.set(COOKIE, encodeURIComponent(JSON.stringify(data.user)), {
httpOnly: true,
path: "/",
maxAge: 60 * 60 * 12,
sameSite: "lax"
});
return res;
}