Vacancies (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.
Vacantes) define how many seats are available for each combination of academic program, admission modality, and process. They form the ceiling against which the results engine checks how many applicants can be admitted. Without vacancy records, no results can be published for that program-modality pair — the results calculation will find zero eligible seats and skip the combination entirely.
What Vacancies Represent
Every row in thevacantes table holds:
| Column | Description |
|---|---|
id_programa | FK to programa — the academic program |
id_modalidad | FK to modalidad — the admission track |
id_proceso | FK to procesos — the admission process |
vacantes | Integer seat count |
estado | 1 = active, 0 = inactive |
id_usuario | The admin user who last modified this record |
Viewing Vacancies
Navigate to/admin/vacantes to open the vacancy management screen (Admin/Vacantes/index.vue). The view scopes automatically to the active process (auth()->user()->id_proceso) and accepts a modalidad filter so you can browse one admission track at a time.
nivel (1 = undergraduate, 2 = segunda admisión), with a left-joined vacancy row when one exists. Programs without a vacancy record still appear in the list so the administrator can quickly spot unconfigured seats.
Example response:
Setting or Updating Vacancy Counts
Locate the Program Row
Use the search field to filter by
codigo_sunedu or program name. The list shows all programs registered at the process level.Enter the Seat Count
Click the edit control on the row and type the new vacancy number. A value of
0 is valid and means the program participates in the process but admits nobody through ordinary channels.Removing a Vacancy Record
To remove a vacancy (effectively disabling a program-modality pair for the active process):Vacante::find($request->id_vacante)->delete(). The program will continue to appear on the vacancy list but with null vacancy values, making it easy to reconfigure later.
Program-Modality Matrix
Administrators can view a condensed pivot matrix of all programs and their active modalities viaProgramaProcesoController::getProgramaProceso():
"SI" when an active vacancy exists, or "-" when the combination is not configured. This gives a quick bird’s-eye view of the entire process configuration.
Ratio Configuration
Ratios (Ratio) allow the results engine to weight or cap admissions by applicant category within a program. The ratio configuration screen is available at:
Dropdown Selects for Vacancy-Scoped Queries
Other modules (results, reports, biometric summary) need to present only modalities or programs that actually have vacancies in the current process. The following helper endpoints serve these dropdowns. Note that all three routes below exist outside the/admin prefix and are globally accessible to authenticated users:
GET /get-select-modalidad-proceso/{id} and POST /get-select-programas-proceso return { "estado": true, "datos": [ { "value": <id>, "label": "<name>" }, ... ] }.
How Vacancies Affect Results
During the results processing step, the engine queries thevacantes table for each program-modality-process triple. It then ranks applicants by score and marks as apto = 'SI' only those who fall within the seat limit. Any applicant ranked beyond the vacancy count is marked apto = 'NO'.
Vacancy Status Tracking
To understand seat fill rates, combine the vacancy count fromvacantes.vacantes with the inscription count from inscripciones filtered to the same id_programa, id_modalidad, and id_proceso. The dashboard’s “Top Programas con más Inscritos” chart (GET /admin/dashboard/inscritos-por-programa) gives a quick visual of programs that are approaching or exceeding their configured vacancy limits.
| Status | How to identify |
|---|---|
| Unconfigured | id_vacante IS NULL in the vacancy list response |
| Empty | vacantes = 0 — seats set to zero |
| Under capacity | inscripciones_count < vacantes |
| At capacity | inscripciones_count = vacantes |
| Over-inscribed | inscripciones_count > vacantes (normal — final selection happens at results stage) |