The admin dashboard is the central command panel for the Sistema de Admisión Web. Every time the administrator logs in, they land atDocumentation 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.
/admin/dashboard where all key metrics for the currently active admission process are assembled in a single view. Charts refresh on page load via parallel asynchronous requests, so the figures always reflect the latest database state without requiring a manual page refresh.
Access to the admin dashboard and all routes under the
/admin/* prefix requires id_rol = 1. The Admin middleware (app/Http/Middleware/Admin.php) enforces this check on every request and returns HTTP 403 if the authenticated user does not meet the requirement. Login automatically redirects users with id_rol = 1 to /admin/dashboard.Key Performance Indicators
The top row of the dashboard surfaces four KPI cards, each scoped to the process stored inauth()->user()->id_proceso:
| Card | Metric | Source table | Today delta |
|---|---|---|---|
| Preinscritos | Total pre-registrations in the active process | pre_inscripcion | preinscritos_hoy |
| Inscritos | Completed enrollments (estado = 0) | inscripciones | inscritos_hoy |
| Ctrl. Biométrico | Biometric captures recorded | control_biometrico | biometricos_hoy |
| Postulantes | Applicants linked to an inscription (estado = 0) | postulante joined to inscripciones | — |
GET /admin/dashboard/resumen-general, which returns a JSON object under the datos key with the following fields:
Legacy KPI Endpoints
In addition to the unifiedresumen-general endpoint, two older endpoints remain active and are consumed by some dashboard widgets:
{ "estado": true, "preinscritos"/"inscritos": <count>, "fecha": { "count": N, "date": "YYYY-MM-DD" } }.
Biometric Progress Bar
Below the KPI cards, a full-width progress bar tracks how many admitted applicants (total_ingresantes) have completed biometric registration (con_biometrico). The percentage is calculated server-side by DashboardController::biometricoResumen() and displayed as a gradient bar. The card also breaks down biometric coverage by academic area.
Charts and Visualisations
The dashboard renders seven interactive Chart.js visualisations (Line, Bar, Doughnut, Pie), all powered byvue-chartjs. Charts are conditionally rendered — they only appear when resumen.inscritos > 0, so a new process with no inscriptions shows a clean empty-state message instead of blank axes.
Inscripciones por Fecha
A line chart displaying the daily inscription count as a time-series.
Endpoint:
GET /admin/dashboard/timeline-inscripcionesInscripciones por Género y Área
Grouped bar chart comparing male (
sexo = 1) and female (sexo = 2) applicants across each academic area.
Endpoint: GET /admin/dashboard/genero-por-areaPostulantes por Área
Doughnut chart breaking down total applicants by academic area (e.g. INGENIERÍAS, BIOMÉDICAS, SOCIALES).
Endpoint:
GET /admin/dashboard/postulantes-por-areaDistribución por Modalidad
Doughnut chart showing how inscriptions are distributed across admission modalities (e.g. Ordinario, Especial).
Endpoint:
GET /admin/dashboard/modalidad-distribucionTop Programas con más Inscritos
Horizontal bar chart of the top 15 academic programs by inscription count, colour-coded by area.
Endpoint:
GET /admin/dashboard/inscritos-por-programaTipo de Colegio
Pie chart showing the
gestion distribution of applicants’ secondary schools (public vs private).
Endpoint: GET /admin/dashboard/tipo-colegio-distribucionBiométrico por Área
Grouped bar chart comparing total admitidos vs biometric-registered vs pending per area.
Endpoint:
GET /admin/dashboard/biometrico-resumenMejores Inscriptores
Ranked list of the top staff members who registered the most inscriptions, with a relative progress bar.
Endpoint:
GET /admin/get-mejores-inscriptoresTop Inscriptores Endpoints
Two endpoints exist for the “Mejores Inscriptores” widget. The first returns the top 4 by total count; the second returns up to 5 users who have recorded more than 5 inscriptions, ordered ascending (reversed for display):{ "estado": true, "inscriptores": [ { "cant": N, "name": "...", "paterno": "...", "materno": "..." }, ... ] }.
Demographic Reports
From the dashboard’s reporting sub-panel (/admin/component), administrators can retrieve additional demographic breakdowns without leaving the section:
| Report | Endpoint | Description |
|---|---|---|
| Gender distribution | GET /admin/get-inscritos-genero-reporte | Inscription count grouped by postulante.sexo |
| Age distribution | GET /admin/get-inscritos-edad-reporte | Top 7 age groups (TIMESTAMPDIFF(YEAR, fec_nacimiento, CURDATE())) |
| Residence | GET /admin/get-inscritos-residencia-reporte | Top 6 department/province/district combinations |
| Origin (birth place) | GET /admin/get-inscritos-procedencia-reporte | Top 8 birth-place combinations |
| Graduation year | GET /admin/get-inscritos-egreso-reporte | Top 7 high school graduation years (postulante.anio_egreso) |
| Disability | GET /admin/get-inscritos-discapacidad-reporte | Count by postulante.discapacidad value |
| Document type | GET /admin/get-inscritos-tipo-documento-reporte | Counts grouped by tipo_documento_identidad.nombre |
| Top schools | GET /admin/get-inscritos-colegio-reporte | Top 7 schools by colegios.cod_modular |
| School origin | GET /admin/get-inscritos-procedencia-colegio-reporte | Top 7 school locations (dep/prov/dist) |
| School type | GET /admin/get-inscritos-tipo-colegio-reporte | Grouped by colegios.gestion (public vs private) |
{ "datos": [...], "estado": true } and are consumed by the Chart.js visualisations in Admin/Dashboard/components/reportes.vue.
Navigating to Submodules
TheAuthenticatedLayout sidebar provides direct links to all admin submodules. From the dashboard header the administrator can switch between:
- Procesos (
/admin/procesos) — Create and configure admission processes - Vacantes (
/admin/vacantes) — Set seat limits per program and modality - Inscripciones (
/admin/inscripciones) — Browse and manage enrollments - Control Biométrico (
/admin/control-biometrico) — Biometric registration tracking - Usuarios (
/admin/usuarios) — Staff account management - Reportes / Resúmenes — Export reports as PDF or Excel
- Trazabilidad (
/admin/trazabilidad) — Full audit trail
Changing the Active Process
The dashboard always displays data for the process assigned to the authenticated user (auth()->user()->id_proceso). To switch context, the administrator calls:
users.id_proceso for the authenticated user via ProcesoController::cambiarProceso(). All subsequent dashboard requests then aggregate data against the new process ID.
Applicant Profile Lookup
Administrators can view a full applicant profile from the dashboard by navigating to/admin/perfil-postulante or by using the DNI lookup:
DashboardController::showPostulante() renders the Admin/Postulante/Perfil Inertia page with pre-inscription counts, inscription history, biometric count, colegio data, a photo URL, and any linked user account.
Audit Trail Access
Every administrative action — from saving a process to editing vacancies — is recorded in theaudit_trail table via AuditService. The trazabilidad view (/admin/trazabilidad) provides filterable access to this log.
Filter by Actor or Action
Use the
action, user_id, date_from, and date_to query parameters to narrow results. The endpoint is GET /admin/trazabilidad/data.