Files
servicio_social_api/server/controller/Usuario/newPasswordAlumno.js
T
Lemuel Marquez 49005c7b52 return objeto
2021-01-14 16:02:57 -06:00

38 lines
1.2 KiB
JavaScript

const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const encriptar = require('../../helper/encriptar');
const validar = require('../../helper/validar');
const Usuario = require('../../db/tablas/Usuario');
const Servicio = require('../../db/tablas/Servicio');
const newPasswordAlumno = async (body) => {
const idServicio = validar.validarId(body.idServicio);
const password = encriptar.generarPassword();
let idUsuario;
let correo = {};
return Servicio.findOne({
where: { idServicio },
include: [{ model: Usuario }],
})
.then((res) => {
if (!res) throw new Error('No existe este Servicio Social.');
if (res.Usuario.idTipoUsuario != 3)
throw new Error('Este usuario no es de tipo alumno.');
correo = correos.preRegistro(password, res.Usuario.nombre);
idUsuario = res.idUsuario;
return gmail(correo.subject, res.correo, correo.msj);
})
.then((res) =>
Usuario.update(
{ password: encriptar.encriptar(password) },
{ where: { idUsuario } }
)
)
.then((res) => ({
message: 'Se envio un correo con una contraseña nueva al alumno.',
}));
};
module.exports = newPasswordAlumno;