Source: models/m_obtenerAlumnos.js

/**
 * @fileoverview Modelo para obtener información de alumnos
 * mediante peticiones fetch a controladores PHP en el servidor.
 *
 * @author Mauricio Peña
 */
class M_obtenerAlumnos {
	/**
	 * Obtiene los alumnos de una clase específica.
	 *
	 * @async
	 * @param {number|string} idClase - Identificador de la clase.
	 * @returns {Promise<Object|undefined>} Datos de los alumnos.
	 */
	async obtenerAlumnos(idClase) {
		try {
			const response = await fetch(
				"/InscripcionesEVG/index.php?controlador=obtenerAlumnos&accion=obtenerAlumnos&j=1",
				{
					method: "POST",
					headers: {
						"Content-Type": "application/json",
					},
					body: JSON.stringify({ idClase: idClase }),
				},
			);
			const data = await response.json();
			console.log("ALUMNOS", data);
			return data;
		} catch (error) {
			console.error("Error al obtener alumnos:", error);
		}
	}

	/**
	 * Obtiene las inscripciones de alumnos para el Torneo Olímpico,
	 * filtrando por pruebas masculinas y femeninas.
	 *
	 * @async
	 * @param {number|string} idPruebaM - Identificador de la prueba masculina.
	 * @param {number|string} idPruebaF - Identificador de la prueba femenina.
	 * @returns {Promise<Object|undefined>} Datos de las inscripciones.
	 */
	async obtenerAlumnosInscripcionesTO(idPruebaM, idPruebaF) {
		try {
			const response = await fetch(
				"/InscripcionesEVG/index.php?controlador=obtenerAlumnos&accion=obtenerInscripcionesAlumnosTO&j=1",
				{
					method: "POST",
					headers: {
						"Content-Type": "application/json",
					},
					body: JSON.stringify({ idPruebaM: idPruebaM, idPruebaF: idPruebaF }),
				},
			);
			const data = await response.json();

			console.log("ALUMNOS", data);
			return data;
		} catch (error) {
			console.error("Error al obtener inscripciones de alumnos:", error);
		}
	}
}

export default M_obtenerAlumnos;