diff --git a/server/config/mariadb.conf.js b/server/config/mariadb.conf.js index ae2eb08..9bb3df6 100644 --- a/server/config/mariadb.conf.js +++ b/server/config/mariadb.conf.js @@ -53,6 +53,24 @@ const buscarProfesorPorNumero = async (numeroTrabajador) => { }); }; +const validarPeriodoActivo = async (conn) => { + const rows = await conn.query( + `SELECT id_periodo + FROM periodo + WHERE activo = b'1' + LIMIT 1` + ); + + if (!rows || rows.length === 0) { + console.log('No existe') + throw new Error('No existe un periodo activo en el sistema') + } + + console.log('Este es el periodo: ', rows[0]) + console.log('Este es el id del periodo: ', rows[0].id_periodo) + return rows[0].id_periodo; +} + const validarAlumnoInscrito = async (idCuenta) => { console.log("Validando alumno inscrito con id_cuenta:", idCuenta); @@ -68,22 +86,41 @@ const validarAlumnoInscrito = async (idCuenta) => { throw new Error('No se pudo conectar con la base de datos. ' + err); }); - return conn - .query( - `SELECT * FROM alumno_inscrito WHERE id_cuenta = ? AND id_periodo = 27`, - [idCuenta] - ) - .then((rows) => { - //console.log('Resultado de la consulta alumno_inscrito:', rows); + try { + const idPeriodoActivo = await validarPeriodoActivo(conn); - conn.end(); - if (rows.length === 0) return null; - return rows[0]; // Devuelve el primer registro encontrado - }) - .catch((err) => { - conn.end(); - throw new Error('Error al validar alumno inscrito: ' + err); - }); + console.log("id del periodo: " + idPeriodoActivo) + + const rows = await conn.query( + `SELECT * FROM alumno_inscrito WHERE id_cuenta = ? AND id_periodo = ?`, + [idCuenta, idPeriodoActivo] + ) + + if (rows.length === 0) return null; + + return rows[0] + } catch (error) { + throw new Error('Error al validar alumno inscrito: ' + err) + } finally { + conn.end() + } + + // return conn + // .query( + // `SELECT * FROM alumno_inscrito WHERE id_cuenta = ? AND id_periodo = 27`, + // [idCuenta] + // ) + // .then((rows) => { + // //console.log('Resultado de la consulta alumno_inscrito:', rows); + + // conn.end(); + // if (rows.length === 0) return null; + // return rows[0]; // Devuelve el primer registro encontrado + // }) + // .catch((err) => { + // conn.end(); + // throw new Error('Error al validar alumno inscrito: ' + err); + // }); };