The Simulacro module provides a complete workflow for running mock university admission exams before the official admission cycle. Coordinators create simulacro sessions, participants register and pay the enrollment fee, answer sheets are uploaded and scored, and final results are published to a public API endpoint so participants can look up their scores by DNI. This module operates entirely independently from the main admission exam pipeline.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/ariellukezz/admision-web/llms.txt
Use this file to discover all available pages before exploring further.
The Simulacro module is a self-contained process that runs on its own data tables (
simulacro, inscripcion_simulacro, participantes_simulacro, detalle_examen_simulacro). It does not share enrollment or scoring records with the main admission process (postulante, puntajes, resultados).Role and Access
The Simulacro role (id_rol = 6) gates all management routes. After login, users with this role are redirected to /simulacro. Every route under the /simulacro/* prefix is protected by both the auth and simulacro middleware. Attempting to access these routes with any other role returns a 403 No tienes permisos error.
| Route | View | Description |
|---|---|---|
GET /simulacro | Simulacro/Admin/index | Admin dashboard |
GET /simulacro/simulacros | Simulacro/Simulacros | Simulacro session list |
GET /simulacro/inscripciones | Simulacro/Admin/Inscripciones/index | Enrolled participant list |
GET /simulacro/participantes | Simulacro/Admin/Participantes/index | Participant registry |
GET /simulacro/entrada | Simulacro/Entrada/index | Exam entry / check-in |
GET /simulacro/pagos | Simulacro/Admin/Pagos/index | Payment management |
GET /simulacro/pagos-consulta | Simulacro/Admin/Pagos/consulta | Payment query/lookup |
GET /verificacion-fotos | VerfificacionD/index | Photo verification |
Simulacro Session Workflow
Coordinador creates a simulacro session
A coordinator creates a new session via
POST /simulacro/save-simulacro handled by SimulacroController@saveSimulacro. Each Simulacro record stores:nombre— session name (e.g., “Simulacro 2024-I”)anio— exam yearestado— active/inactive toggleubigeo— geographic location (department / province / district) of the exam venuefecha— auto-set to the creation dateid_usuario— authenticated coordinator
POST /simulacro/get-simulacros → SimulacroController@getSimulacros.Participants register (InscripcionSimulacro)
Public participants self-register via Once enrolled, the coordinator can view participants through:
SimulacroController@saveParticipante, which wraps participant creation and enrollment in a single database transaction:POST /simulacro/get-inscritos-simulacro— paginated list joined withprograma,colegios, and ubigeo, searchable by name, DNI, school, or program.POST /simulacro/get-participantes-simulacro— full participant detail including residence and school ubigeo.
SimulacroController@pdfInscripcion (GET /pdf-simulacro-inscripcion/{dni}) and stored at public/documentos/simulacro2023/{dni}.pdf.Answer sheets uploaded and scored
Exam answer data and results are managed through the
Individual exam responses are recorded per-question via
ResultadosController bulk-upload endpoints under the /calificacion prefix:| Endpoint | Controller Method | Description |
|---|---|---|
POST /calificacion/subir-excel-simulacro | ResultadosController@SubirResultado | Upload XLSX result file |
POST /calificacion/carga-ide/{proceso}/{area} | ResultadosController@cargaArchivoIde | Load IDE answer data |
POST /calificacion/carga-res/{proceso} | ResultadosController@cargaArchivoRes | Load response data |
POST /calificacion/carga-pat/{proceso} | ResultadosController@cargaArchivoPat | Load pattern/key file |
SimulacroController@saveRespuestas (POST /simulacro/save-respuestas) and the private guardarRespuesta helper, storing each answer with its nota (0, partial, or full score × ponderacion) into detalle_examen_simulacro.Photo verification
Before results are published, participant photos are cross-checked at the dedicated route:This page is only accessible to authenticated Simulacro-role users. Coordinators use it to confirm that the photo on record matches the participant who attended the exam session.
Results computed and published
Aggregate scores per area are available through Once published, results are available on the public API endpoint described below.
ResultadosController@getResultados (POST /get-puntaje-simulacro). Maximum scores per knowledge area (INGENIERÍAS, BIOMÉDICAS, SOCIALES) are retrieved by PuntajeController@getPunajesMaximos:Exam Entry / Check-In
The entry sub-panel atGET /simulacro/entrada (Simulacro/Entrada/index) lets staff record participant check-in on exam day. Three SimulacroController methods power this flow:
| Endpoint | Method | Description |
|---|---|---|
POST /simulacro/get-participante | getEntrada | Lookup a participant record by nro_doc from the entrada table |
POST /simulacro/save-entrada | saveEntrada | Mark a participant as checked in (ingreso = 1, fecha_ingreso = now()) |
POST /simulacro/get-total-entrada | getTotalEntrada | Return total check-in count broken down by area (INGENIERÍAS, BIOMÉDICAS, SOCIALES) |
POST /simulacro/get-simulacro-ingreso | getIngresos | Paginated list of all check-in records, searchable by name or DNI |
Payment Processing
Participants pay a fee before completing registration. Payment is handled byPagoSimulacroController, which integrates with the university’s external payment gateway.
Payment verification flow:
POST /simulacro/get-pagos-simulacro (PagoSimulacroController@getPagosSimulacro). An alternate consulta view queries the pagostemp table for cross-referencing through POST /simulacro/get-pagos-simulacro-consulta.
Public Results API
Once results are published, any external system or participant can query their score by DNI without authentication:ResCepreController@obtenerInformacionEstudiante
This endpoint is public (no auth:sanctum middleware) and returns the student’s simulacro result data including area scores. It is the primary integration point for the university portal and third-party student-facing applications.
Dashboard Statistics
The Simulacro admin panel surfaces real-time counters via threeGET endpoints on SimulacroController (all under the auth + simulacro middleware group):
| Endpoint | Method | Returns |
|---|---|---|
GET /simulacro/get-nro-participantes | postulantesRegistrados | Total ParticipanteSimulacro count + last registration date |
GET /simulacro/get-nro-inscritos | postulantesInscritos | Total InscripcionSimulacro count + last enrollment date |
GET /simulacro/get-nro-pagos | pagosRegistrados | Total Pago count + last payment date |
GET /simulacro/postulantes-por-programas | postulantexPrograma | Enrollment count grouped by programa.nombre and area |
GET /simulacro/get-inscritos-genero-reporte | reporteInscritosGenero | Enrollment count grouped by sexo |
GET /simulacro/get-inscritos-areas-reporte | reporteInscritosAreas | Enrollment count grouped by academic area |