Files
servicio_social_api/server/controller/Servicio/alumno.js
T
2020-11-19 11:47:23 -06:00

69 lines
2.3 KiB
JavaScript

const validar = require('../../helper/validar');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Carrera = require('../../db/tablas/Carrera');
const Status = require('../../db/tablas/Status');
const Programa = require('../../db/tablas/Programa');
const alumno = async (body) => {
let idUsuario = validar.validarId(body.idUsuario);
return Usuario.findOne({ where: { idUsuario } })
.then((res) => {
if (!res) throw new Error('No existe este usuario.');
if (res.idTipoUsuario !== 3)
throw new Error('No es un usuaior de tipo alumno.');
return Servicio.findOne({
where: { idUsuario },
include: [
{ model: Usuario },
{ model: Carrera },
{ model: Status },
{ model: Programa },
],
});
})
.then((res) => {
if (!res) throw new Error('No existe este servicio social.');
return {
idServicio: res.idServicio,
creditos: res.creditos,
correo: res.correo,
telefono: res.telefono,
direccion: res.direccion,
fechaInicio: res.fechaInicio,
fechaFin: res.fechaFin,
fechaNacimiento: res.fechaNacimiento,
carpeta: res.carpeta,
cartaAceptacion: res.cartaAceptacion,
cartaTermino: res.cartaTermino,
informeGlobal: res.informeGlobal,
programaInterno: res.programaInterno,
profesor: res.profesor,
vistoBuenoAcatlan: res.vistoBuenoAcatlan,
idCuestionarioAlumno: res.idCuestionarioAlumno,
idCuestionarioPrograma: res.idCuestionarioPrograma,
Carrera: {
idCarrera: res.Carrera.idCarrera,
carrera: res.Carrera.carrera,
},
Status: {
idStatus: res.Status.idStatus,
status: res.Status.status,
},
Programa: {
idPrograma: res.Programa.idPrograma,
institucion: res.Programa.institucion,
dependencia: res.Programa.dependencia,
programa: res.Programa.programa,
clavePrograma: res.Programa.clavePrograma,
acatlan: res.Programa.acatlan,
activo: res.Programa.activo,
idUsuario: res.Programa.idUsuario,
},
};
});
};
module.exports = alumno;