Files
citas_recorridos_api/server/controller/TercerSemestre/get.js
T
2021-07-11 21:00:33 -05:00

44 lines
1.4 KiB
JavaScript

const Dia = require('../../db/tablas/Dia');
const DiaHora = require('../../db/tablas/DiaHora');
const Hora = require('../../db/tablas/Hora');
const { validarNumeroCuenta } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Grupo = require(`${dbPath}/Grupo`);
const GrupoDiaHora = require(`${dbPath}/GrupoDiaHora`);
const TercerSemestre = require(`${dbPath}/TercerSemestre`);
const get = async (body) => {
const numeroCuenta = validarNumeroCuenta(body.numeroCuenta);
let alumnoTercerSemestre = {};
/*
Falta
Buscar el horario que le toca
*/
return TercerSemestre.findOne({
where: { numeroCuenta },
include: [{ model: Grupo, include: [{ model: Carrera }] }],
})
.then((res) => {
if (!res) throw new Error('No existe esta alumno.');
if (res.deseaAsistir)
throw new Error('Ya se registro a este alumno al recorrido.');
alumnoTercerSemestre = res;
delete alumnoTercerSemestre.dataValues.idGrupo;
delete alumnoTercerSemestre.dataValues.Grupo.dataValues.idCarrera;
return GrupoDiaHora.findOne({
where: { idGrupo: alumnoTercerSemestre.Grupo.idGrupo },
include: [
{ model: DiaHora, include: [{ model: Dia }, { model: Hora }] },
],
});
})
.then((res) => {
delete res.dataValues.idDiaHora;
return { alumnoTercerSemestre, GrupoDiaHora: res };
});
};
module.exports = get;