erore merge

This commit is contained in:
xXpuma99Xx
2021-12-07 14:05:09 -06:00
59 changed files with 1454 additions and 1671 deletions
@@ -1,12 +1,13 @@
const validar = require('../../helper/validar');
const CasoEspecial = require('../../db/tablas/CasoEspecial');
const Usuario = require('../../db/tablas/Usuario');
const TipoUsuario = require('../../db/tablas/TipoUsuario');
const Carrera = require('../../db/tablas/Carrera');
const Status = require('../../db/tablas/Status');
const { validarId } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const CasoEspecial = require(`${dbPath}/CasoEspecial`);
const Status = require(`${dbPath}/Status`);
const TipoUsuario = require(`${dbPath}/TipoUsuario`);
const Usuario = require(`${dbPath}/Usuario`);
const admin = async (body) => {
const idCasoEspecial = validar.validarId(body.idCasoEspecial);
const idCasoEspecial = validarId(body.idCasoEspecial);
return CasoEspecial.findOne({
where: { idCasoEspecial },
+8 -6
View File
@@ -1,11 +1,13 @@
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const CasoEspecial = require('../../db/tablas/CasoEspecial');
const Usuario = require('../../db/tablas/Usuario');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const { validarId } = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const CasoEspecial = require(`${dbPath}/CasoEspecial`);
const Usuario = require(`${dbPath}/Usuario`);
const liberacion = async (body) => {
const idCasoEspecial = validar.validarId(body.idCasoEspecial);
const idCasoEspecial = validarId(body.idCasoEspecial);
let update = {};
return CasoEspecial.findOne({
+7 -5
View File
@@ -1,8 +1,10 @@
const drive = require('../../helper/drive');
const CasoEspecial = require('../../db/tablas/CasoEspecial');
const Usuario = require('../../db/tablas/Usuario');
const Carrera = require('../../db/tablas/Carrera');
const validar = require('../../helper/validar');
const helperPath = '../../helper';
const drive = require(`${helperPath}/drive`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const CasoEspecial = require(`${dbPath}/CasoEspecial`);
const Usuario = require(`${dbPath}/Usuario`);
const nuevo = async (body, file) => {
const idUsuario = validar.validarId(body.idUsuario);
@@ -1,13 +1,13 @@
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const CasoEspecial = require('../../db/tablas/CasoEspecial');
const Usuario = require('../../db/tablas/Usuario');
const Carrera = require('../../db/tablas/Carrera');
const Status = require('../../db/tablas/Status');
const TipoUsuario = require('../../db/tablas/TipoUsuario');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const CasoEspecial = require(`${dbPath}/CasoEspecial`);
const Status = require(`${dbPath}/Status`);
const Usuario = require(`${dbPath}/Usuario`);
const serviciosEspeciales = async (body) => {
const pagina = validar.validarId(body.pagina);
const pagina = validar.validarNumero(body.pagina, true);
const where = body.idStatus
? { idStatus: validar.validarId(body.idStatus) }
: { idStatus: { [Op.gt]: 10 } };
@@ -17,41 +17,29 @@ const serviciosEspeciales = async (body) => {
const numeroCuenta = body.numeroCuenta
? validar.validarNumeroCuenta(body.numeroCuenta)
: '';
const data = [];
return CasoEspecial.findAll({
return CasoEspecial.findAndCountAll({
include: [
{
model: Usuario,
include: { model: TipoUsuario },
where: {
usuario: { [Op.like]: `%${numeroCuenta}%` },
nombre: { [Op.like]: `%${nombre}%` },
[Op.and]: [
{ usuario: { [Op.like]: `%${numeroCuenta}%` } },
{ nombre: { [Op.like]: `%${nombre}%` } },
],
},
},
{ model: Carrera },
{ model: Status, where },
],
order: [['updatedAt', 'DESC']],
limit: 25,
offset: 25 * (pagina - 1),
}).then((res) => {
for (let i = pagina * 25 - 25; i < res.length && i < pagina * 25; i++)
data.push({
idCasoEspecial: res[i].idCasoEspecial,
createdAt: res[i].createdAt,
Usuario: {
idUsuario: res[i].Usuario.idUsuario,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
TipoUsuario: res[i].Usuario.TipoUsuario,
},
Carrera: res[i].Carrera,
Status: res[i].Status,
});
return {
registros: res.length,
faltantes: res.length - data.length - (pagina - 1) * 25,
servicios: data,
};
for (let i = 0; i < res.rows.length; i++) {
// delete res.rows[i].dataValues.idUsuario
}
return { count: res.count, serviciosEspeciales: res.rows };
});
};
+1 -1
View File
@@ -41,7 +41,7 @@ const update = async (body) => {
'El texto motivo.',
1
);
if (validar.isObjectEmpty(dataUpdate))
if (validar.validarObjetoVacio(dataUpdate))
throw new Error(
'No se envio nada para actualizar este Caso Especial.'
);
+61 -61
View File
@@ -1,15 +1,17 @@
const fs = require('fs');
const { convertArrayToCSV } = require('convert-array-to-csv');
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const CuestionarioAlumno = require('../../db/tablas/CuestionarioAlumno');
const Servicio = require('../../db/tablas/Servicio');
const Programa = require('../../db/tablas/Programa');
const Usuario = require('../../db/tablas/Usuario');
const helperPath = '../../helper';
const helper = require(`${helperPath}/helper`);
const { validarNumero } = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const CuestionarioAlumno = require(`${dbPath}/CuestionarioAlumno`);
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const get = async (body) => {
const year = validar.validarNumero(body.year, 4);
const path = `csv/${year}_cuestionario_alumno.csv`;
const year = validarNumero(body.year, 4);
const path = `server/uploads/${year}_cuestionario_alumno.csv`;
const data = [];
return Servicio.findAll({
@@ -21,61 +23,59 @@ const get = async (body) => {
{ model: Programa, where: { clavePrograma: { [Op.like]: `${year}%` } } },
{ model: Usuario },
],
}).then((res) => {
for (let i = 0; i < res.length; i++)
data.push({
idServicio: res[i].idServicio,
clavePrograma: res[i].Programa.clavePrograma,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
idCuestionarioAlumno: res[i].CuestionarioAlumno.idCuestionarioAlumno,
sexo: res[i].CuestionarioAlumno.sexo,
edad: res[i].CuestionarioAlumno.edad,
servicioMedico: res[i].CuestionarioAlumno.servicioMedico,
p1: res[i].CuestionarioAlumno.p1,
p2: res[i].CuestionarioAlumno.p2,
p3: res[i].CuestionarioAlumno.p3,
p4: res[i].CuestionarioAlumno.p4,
p5: res[i].CuestionarioAlumno.p5,
p6: res[i].CuestionarioAlumno.p6,
p7: res[i].CuestionarioAlumno.p7,
p8: res[i].CuestionarioAlumno.p8,
p9: res[i].CuestionarioAlumno.p9,
p10: res[i].CuestionarioAlumno.p10,
p11: res[i].CuestionarioAlumno.p11,
p12: res[i].CuestionarioAlumno.p12,
p13: res[i].CuestionarioAlumno.p13,
p14: res[i].CuestionarioAlumno.p14,
p15: res[i].CuestionarioAlumno.p15,
p16: res[i].CuestionarioAlumno.p16,
p17: res[i].CuestionarioAlumno.p17,
p18: res[i].CuestionarioAlumno.p18,
p19: res[i].CuestionarioAlumno.p19,
p20: res[i].CuestionarioAlumno.p20,
p21: res[i].CuestionarioAlumno.p21,
p22: res[i].CuestionarioAlumno.p22,
p23: res[i].CuestionarioAlumno.p23,
p24: res[i].CuestionarioAlumno.p24,
p25: res[i].CuestionarioAlumno.p25,
p26: res[i].CuestionarioAlumno.p26,
p27: res[i].CuestionarioAlumno.p27,
p28: res[i].CuestionarioAlumno.p28,
p29: res[i].CuestionarioAlumno.p29,
p30: res[i].CuestionarioAlumno.p30,
createdAt: res[i].CuestionarioAlumno.createdAt,
order: [['createdAt']],
})
.then(async (res) => {
for (let i = 0; i < res.length; i++)
data.push({
idServicio: res[i].idServicio,
clavePrograma: res[i].Programa.clavePrograma,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
idCuestionarioAlumno: res[i].CuestionarioAlumno.idCuestionarioAlumno,
sexo: res[i].CuestionarioAlumno.sexo,
edad: res[i].CuestionarioAlumno.edad,
servicioMedico: res[i].CuestionarioAlumno.servicioMedico,
p1: res[i].CuestionarioAlumno.p1,
p2: res[i].CuestionarioAlumno.p2,
p3: res[i].CuestionarioAlumno.p3,
p4: res[i].CuestionarioAlumno.p4,
p5: res[i].CuestionarioAlumno.p5,
p6: res[i].CuestionarioAlumno.p6,
p7: res[i].CuestionarioAlumno.p7,
p8: res[i].CuestionarioAlumno.p8,
p9: res[i].CuestionarioAlumno.p9,
p10: res[i].CuestionarioAlumno.p10,
p11: res[i].CuestionarioAlumno.p11,
p12: res[i].CuestionarioAlumno.p12,
p13: res[i].CuestionarioAlumno.p13,
p14: res[i].CuestionarioAlumno.p14,
p15: res[i].CuestionarioAlumno.p15,
p16: res[i].CuestionarioAlumno.p16,
p17: res[i].CuestionarioAlumno.p17,
p18: res[i].CuestionarioAlumno.p18,
p19: res[i].CuestionarioAlumno.p19,
p20: res[i].CuestionarioAlumno.p20,
p21: res[i].CuestionarioAlumno.p21,
p22: res[i].CuestionarioAlumno.p22,
p23: res[i].CuestionarioAlumno.p23,
p24: res[i].CuestionarioAlumno.p24,
p25: res[i].CuestionarioAlumno.p25,
p26: res[i].CuestionarioAlumno.p26,
p27: res[i].CuestionarioAlumno.p27,
p28: res[i].CuestionarioAlumno.p28,
p29: res[i].CuestionarioAlumno.p29,
p30: res[i].CuestionarioAlumno.p30,
createdAt: res[i].CuestionarioAlumno.createdAt,
});
await helper.eliminarArchivo(path).catch((err) => {
console.log(err);
});
try {
fs.unlinkSync(path);
} catch (err) {
console.log(err);
}
fs.appendFile(path, convertArrayToCSV(data), (err) => {
if (err) throw new Error(err);
return helper.crearArchivo(path, convertArrayToCSV(data));
})
.then((res) => {
return path;
});
return {
message: `Se creo/actualizo correctamente el csv del cuestionario de alumno del año ${year}.`,
};
});
};
module.exports = get;
@@ -1,6 +1,7 @@
const validar = require('../../helper/validar');
const CuestionarioAlumno = require('../../db/tablas/CuestionarioAlumno');
const Servicio = require('../../db/tablas/Servicio');
const dbPath = '../../db/tablas';
const CuestionarioAlumno = require(`${dbPath}/CuestionarioAlumno`);
const Servicio = require(`${dbPath}/Servicio`);
const nuevo = async (body) => {
const idServicio = validar.validarId(body.idServicio);
+37 -36
View File
@@ -1,15 +1,18 @@
const fs = require('fs');
const { convertArrayToCSV } = require('convert-array-to-csv');
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const CuestionarioPrograma = require('../../db/tablas/CuestionarioPrograma');
const Servicio = require('../../db/tablas/Servicio');
const Programa = require('../../db/tablas/Programa');
const Usuario = require('../../db/tablas/Usuario');
const helperPath = '../../helper';
const helper = require(`${helperPath}/helper`);
const { validarNumero } = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const CuestionarioPrograma = require(`${dbPath}/CuestionarioPrograma`);
const Servicio = require(`${dbPath}/Servicio`);
const Programa = require(`${dbPath}/Programa`);
const Usuario = require(`${dbPath}/Usuario`);
const get = async (body) => {
const year = validar.validarNumero(body.year, 4);
const path = `csv/${year}_cuestionario_programa.csv`;
const year = validarNumero(body.year, 4);
const path = `server/uploads/${year}_cuestionario_programa.csv`;
const data = [];
return Servicio.findAll({
@@ -21,37 +24,35 @@ const get = async (body) => {
{ model: Programa, where: { clavePrograma: { [Op.like]: `${year}-%` } } },
{ model: Usuario },
],
}).then((res) => {
for (let i = 0; i < res.length; i++)
data.push({
idServicio: res[i].idServicio,
clavePrograma: res[i].Programa.clavePrograma,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
idCuestionarioPrograma:
res[i].CuestionarioPrograma.idCuestionarioPrograma,
actividad1: res[i].CuestionarioPrograma.actividad1,
actividad2: res[i].CuestionarioPrograma.actividad2,
actividad3: res[i].CuestionarioPrograma.actividad3,
actividad4: res[i].CuestionarioPrograma.actividad4,
actividad5: res[i].CuestionarioPrograma.actividad5,
retroalimentacion: res[i].CuestionarioPrograma.retroalimentacion,
p6: res[i].CuestionarioPrograma.p6,
p7: res[i].CuestionarioPrograma.p7,
createdAt: res[i].CuestionarioPrograma.createdAt,
order: [['createdAt']],
})
.then(async (res) => {
for (let i = 0; i < res.length; i++)
data.push({
idServicio: res[i].idServicio,
clavePrograma: res[i].Programa.clavePrograma,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
idCuestionarioPrograma:
res[i].CuestionarioPrograma.idCuestionarioPrograma,
actividad1: res[i].CuestionarioPrograma.actividad1,
actividad2: res[i].CuestionarioPrograma.actividad2,
actividad3: res[i].CuestionarioPrograma.actividad3,
actividad4: res[i].CuestionarioPrograma.actividad4,
actividad5: res[i].CuestionarioPrograma.actividad5,
retroalimentacion: res[i].CuestionarioPrograma.retroalimentacion,
p6: res[i].CuestionarioPrograma.p6,
p7: res[i].CuestionarioPrograma.p7,
createdAt: res[i].CuestionarioPrograma.createdAt,
});
await helper.eliminarArchivo(path).catch((err) => {
console.log(err);
});
try {
fs.unlinkSync(path);
} catch (err) {
console.log(err);
}
fs.appendFile(path, convertArrayToCSV(data), (err) => {
if (err) throw new Error(err);
return helper.crearArchivo(path, convertArrayToCSV(data));
})
.then((res) => {
return path;
});
return {
message: `Se creo/actualizo correctamente el csv del cuestionario de programa del año ${year}.`,
};
});
};
module.exports = get;
@@ -1,6 +1,7 @@
const validar = require('../../helper/validar');
const CuestionarioPrograma = require('../../db/tablas/CuestionarioPrograma');
const Servicio = require('../../db/tablas/Servicio');
const dbPath = '../../db/tablas';
const CuestionarioPrograma = require(`${dbPath}/CuestionarioPrograma`);
const Servicio = require(`${dbPath}/Servicio`);
const nuevo = async (body) => {
const idServicio = validar.validarId(body.idServicio);
+20 -22
View File
@@ -1,12 +1,14 @@
const fs = require('fs');
const moment = require('moment');
const csv = require('csvtojson');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const encriptar = require('../../helper/encriptar');
const validar = require('../../helper/validar');
const Programa = require('../../db/tablas/Programa');
const Usuario = require('../../db/tablas/Usuario');
const moment = require('moment');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const encriptar = require(`${helperPath}/encriptar`);
const gmail = require(`${helperPath}/gmail`);
const { validarCorreo } = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Usuario = require(`${dbPath}/Usuario`);
const cargaMasiva = async (file) => {
const path = `server/uploads/${file}`;
@@ -32,7 +34,7 @@ const cargaMasiva = async (file) => {
continue;
}
try {
validar.validarCorreo(programas[i].correo);
validarCorreo(programas[i].correo);
} catch (err) {
console.log(err);
mensaje += 'Esta linea contiene un correo no valido.\n\n';
@@ -42,7 +44,7 @@ const cargaMasiva = async (file) => {
const activo = Number(programas[i].clave.substr(0, 4)) === today.year();
const responsable = await Usuario.findOne({
where: { usuario: programas[i].correo, idTipoUsuario: 2 },
}).then(async (res) => {
}).then((res) => {
if (!res) {
const password = encriptar.generarPassword();
const correo = correos.enviarSec(
@@ -50,8 +52,6 @@ const cargaMasiva = async (file) => {
programas[i].correo,
programas[i].nombre
);
await gmail(correo.subject, programas[i].correo, correo.msj);
return Usuario.create({
usuario: programas[i].correo,
password: encriptar.encriptar(password),
@@ -59,12 +59,13 @@ const cargaMasiva = async (file) => {
activo: true,
idTipoUsuario: 2,
})
.then((res) => {
mensaje += `Se creo el responsable con id ${res.idUsuario} y correo ${res.usuario}\n`;
.then(async (res) => {
await gmail(correo.subject, programas[i].correo, correo.msj);
mensaje += `Se creo al responsable con id ${res.idUsuario} y correo ${res.usuario}\n`;
return res;
})
.catch((err) => {
mensaje += err;
mensaje = mensaje + err.message + err;
});
}
return res;
@@ -84,13 +85,13 @@ const cargaMasiva = async (file) => {
activo,
idUsuario: responsable.idUsuario,
}).catch((err) => {
mensaje += err;
mensaje = mensaje + err.message + err;
});
}
mensaje += `El programa ${res.clavePrograma} ya ${
programas[i].correo === res.Usuario.usuario
? 'le pertenece a este responsable'
: 'fue asignado a otro responsable'
: 'fue asignado al responsable'
} con id ${res.Usuario.idUsuario} y correo ${
res.Usuario.usuario
}.\n`;
@@ -98,7 +99,7 @@ const cargaMasiva = async (file) => {
})
.then((res) => {
if (res)
mensaje += `Se asigno el programa ${res.clavePrograma} con id ${res.idPrograma} al usuario con correo ${responsable.idUsuario} y correo ${responsable.usuario}\n`;
mensaje += `Se asigno el programa ${res.clavePrograma} con id ${res.idPrograma} al usuario con id ${responsable.idUsuario} y correo ${responsable.usuario}\n`;
});
} else {
await Programa.findOne({
@@ -118,7 +119,7 @@ const cargaMasiva = async (file) => {
acatlan,
idUsuario: responsable.idUsuario,
}).catch((err) => {
mensaje += err;
mensaje = mensaje + err.message + err;
});
}
mensaje += `El programa ${res.clavePrograma} ya pertenece al responsable con id ${responsable.idUsuario} y correo ${responsable.usuario}\n`;
@@ -126,15 +127,12 @@ const cargaMasiva = async (file) => {
})
.then((res) => {
if (res)
mensaje += `Se asigno el programa ${res.clavePrograma} con id ${res.idPrograma} al usuario con correo ${responsable.idUsuario} y correo ${responsable.usuario}\n`;
mensaje += `Se asigno el programa ${res.clavePrograma} con id ${res.idPrograma} al usuario con id ${responsable.idUsuario} y correo ${responsable.usuario}\n`;
});
}
mensaje += '\n';
}
await gmail('Reporte carga masiva', 'lemuel@acatlan.unam.mx', mensaje);
await gmail('Reporte carga masiva', 'dscad@acatlan.unam.mx', mensaje);
await gmail('Reporte carga masiva', 'tramites.ss@acatlan.unam.mx', mensaje);
fs.unlinkSync(path);
});
return {
+5 -4
View File
@@ -1,9 +1,10 @@
const validar = require('../../helper/validar');
const Programa = require('../../db/tablas/Programa');
const Usuario = require('../../db/tablas/Usuario');
const { validarId } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Usuario = require(`${dbPath}/Usuario`);
const programasAdmin = async (body) => {
const idUsuario = validar.validarId(body.idUsuario);
const idUsuario = validarId(body.idUsuario);
return Usuario.findOne({
where: { idUsuario },
@@ -1,9 +1,10 @@
const validar = require('../../helper/validar');
const Programa = require('../../db/tablas/Programa');
const Usuario = require('../../db/tablas/Usuario');
const { validarId } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Usuario = require(`${dbPath}/Usuario`);
const programasResponsable = async (body) => {
const idUsuario = validar.validarId(body.idUsuario);
const idUsuario = validarId(body.idUsuario);
return Usuario.findOne({
where: { idUsuario },
@@ -0,0 +1,40 @@
const { validarId, validarCorreo } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Usuario = require(`${dbPath}/Usuario`);
const reasignarProgramas = async (body) => {
const idUsuario = validarId(body.idUsuario);
const correoOtroResponsable = validarCorreo(body.correoOtroResponsable);
let otorResponsable = {};
return Usuario.findOne({
where: { idUsuario },
})
.then((res) => {
if (!res) throw new Error('No existe este usuario.');
if (res.idTipoUsuario != 2)
throw new Error('No es un usuario de tipo responsable');
if (res.usuario === correoOtroResponsable)
throw new Error('Son el mismo usuario.');
return Usuario.findOne({ where: { usuario: correoOtroResponsable } });
})
.then((res) => {
if (!res) throw new Error('No existe este usuario.');
otorResponsable = res;
return Programa.update(
{ idUsuario },
{
where: { idUsuario: otorResponsable.idUsuario },
}
);
})
.then((res) =>
Usuario.destroy({ where: { idUsuario: otorResponsable.idUsuario } })
)
.then((res) => ({
message: `Se elimino correctamente al usuario ${correoOtroResponsable} y se reasigno correctamente sus programas.`,
}));
};
module.exports = reasignarProgramas;
+9 -8
View File
@@ -1,13 +1,14 @@
const validar = require('../../helper/validar');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const TipoUsuario = require('../../db/tablas/TipoUsuario');
const Carrera = require('../../db/tablas/Carrera');
const Status = require('../../db/tablas/Status');
const Programa = require('../../db/tablas/Programa');
const { validarId } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Status = require(`${dbPath}/Status`);
const TipoUsuario = require(`${dbPath}/TipoUsuario`);
const Usuario = require(`${dbPath}/Usuario`);
const admin = async (body) => {
const idServicio = validar.validarId(body.idServicio);
const idServicio = validarId(body.idServicio);
return Servicio.findOne({
where: { idServicio },
+8 -7
View File
@@ -1,13 +1,14 @@
const { Op } = require('sequelize');
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 { validarId } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Status = require(`${dbPath}/Status`);
const Usuario = require(`${dbPath}/Usuario`);
const alumno = async (body) => {
let idUsuario = validar.validarId(body.idUsuario);
let idUsuario = validarId(body.idUsuario);
return Usuario.findOne({ where: { idUsuario } })
.then((res) => {
+8 -6
View File
@@ -1,9 +1,11 @@
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const cancelar = async (body) => {
const idServicio = validar.validarId(body.idServicio);
@@ -1,5 +1,6 @@
const validar = require('../../helper/validar');
const drive = require('../../helper/drive');
const helperPath = '../../helper';
const drive = require(`${helperPath}/drive`);
const validar = require(`${helperPath}/validar`);
const Servicio = require('../../db/tablas/Servicio');
const cartaTermino = async (body, file) => {
+3 -2
View File
@@ -1,5 +1,6 @@
const validar = require('../../helper/validar');
const drive = require('../../helper/drive');
const helperPath = '../../helper';
const drive = require(`${helperPath}/drive`);
const validar = require(`${helperPath}/validar`);
const Servicio = require('../../db/tablas/Servicio');
const cartaTermino = async (body, file) => {
+25 -25
View File
@@ -1,17 +1,19 @@
const fs = require('fs');
const moment = require('moment');
const { convertArrayToCSV } = require('convert-array-to-csv');
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Carrera = require('../../db/tablas/Carrera');
const helperPath = '../../helper';
const helper = require(`${helperPath}/helper`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const gustavoBazPrada = async (body) => {
const year = validar.validarNumero(body.year, 4);
const inicio = moment(`${year}-01-31`);
const fin = moment(`${parseInt(year) + 1}-01-31`);
const path = `csv/${year}_gustavo_baz_prada.csv`;
const path = `server/uploads/${year}_gustavo_baz_prada.csv`;
const data = [];
return Servicio.findAll({
@@ -22,27 +24,25 @@ const gustavoBazPrada = async (body) => {
],
},
include: [{ model: Usuario }, { model: Carrera }],
}).then((res) => {
for (let i = 0; i < res.length; i++)
data.push({
numeroCuenta: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
licenciatura: res[i].Carrera.carrera,
correo: res[i].correo,
fechaLiberacion: validar.crearDDMMAAAA(res[i].fechaLiberacion),
order: [['fechaLiberacion']],
})
.then(async (res) => {
for (let i = 0; i < res.length; i++)
data.push({
numeroCuenta: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
licenciatura: res[i].Carrera.carrera,
correo: res[i].correo,
fechaLiberacion: helper.crearDDMMAAAA(res[i].fechaLiberacion),
});
await helper.eliminarArchivo(path).catch((err) => {
console.log(err);
});
try {
fs.unlinkSync(path);
} catch (err) {
console.log(err);
}
fs.appendFile(path, convertArrayToCSV(data), (err) => {
if (err) throw new Error(err);
return helper.crearArchivo(path, convertArrayToCSV(data));
})
.then((res) => {
return path;
});
return {
message: `Se creo/actualizo correctamente el csv del reporte Gustavo Baz Prada.`,
};
});
};
module.exports = gustavoBazPrada;
+3 -2
View File
@@ -1,5 +1,6 @@
const validar = require('../../helper/validar');
const drive = require('../../helper/drive');
const helperPath = '../../helper';
const drive = require(`${helperPath}/drive`);
const validar = require(`${helperPath}/validar`);
const Servicio = require('../../db/tablas/Servicio');
const informeGlobal = async (body, file) => {
+9 -7
View File
@@ -1,14 +1,16 @@
const moment = require('moment');
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const liberacion = async (body) => {
const idServicio = validar.validarId(body.idServicio);
const update = { idStatus: 6, fechaLiberacion: moment() };
const update = { idStatus: 6, fechaLiberacion: moment().format() };
let correo = {};
return Servicio.findOne({
+10 -8
View File
@@ -1,10 +1,12 @@
const { Op } = require('sequelize');
const drive = require('../../helper/drive');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const Carrera = require('../../db/tablas/Carrera');
const validar = require('../../helper/validar');
const helperPath = '../../helper';
const drive = require(`${helperPath}/drive`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const nuevo = async (body, file) => {
const idUsuario = validar.validarId(body.idUsuario);
@@ -68,8 +70,8 @@ const nuevo = async (body, file) => {
idCarrera,
creditos,
correo,
fechaInicio,
fechaFin,
fechaInicio: fechaInicio.format(),
fechaFin: fechaFin.format(),
carpeta,
cartaAceptacion: res,
profesor,
@@ -1,9 +1,11 @@
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const cancelar = async (body) => {
const idServicio = validar.validarId(body.idServicio);
@@ -1,9 +1,11 @@
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const cancelar = async (body) => {
const idServicio = validar.validarId(body.idServicio);
@@ -1,9 +1,11 @@
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const cancelar = async (body) => {
const idServicio = validar.validarId(body.idServicio);
+8 -6
View File
@@ -1,9 +1,11 @@
const validar = require('../../helper/validar');
const encriptar = require('../../helper/encriptar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const encriptar = require(`${helperPath}/encriptar`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const registro = async (body) => {
const idServicio = validar.validarId(body.idServicio);
@@ -1,9 +1,11 @@
const validar = require('../../helper/validar');
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const Servicio = require('../../db/tablas/Servicio');
const Usuario = require('../../db/tablas/Usuario');
const Programa = require('../../db/tablas/Programa');
const helperPath = '../../helper';
const correos = require(`${helperPath}/correos`);
const gmail = require(`${helperPath}/gmail`);
const validar = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Usuario = require(`${dbPath}/Usuario`);
const registroValidado = async (body) => {
const idServicio = validar.validarId(body.idServicio);
+39 -39
View File
@@ -1,24 +1,26 @@
const fs = require('fs');
const { convertArrayToCSV } = require('convert-array-to-csv');
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const Servicio = require('../../db/tablas/Servicio');
const Programa = require('../../db/tablas/Programa');
const Usuario = require('../../db/tablas/Usuario');
const Carrera = require('../../db/tablas/Carrera');
const Status = require('../../db/tablas/Status');
const helperPath = '../../helper';
const helper = require(`${helperPath}/helper`);
const { validarFecha } = require(`${helperPath}/validar`);
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Status = require(`${dbPath}/Status`);
const Usuario = require(`${dbPath}/Usuario`);
const reporte = async (body) => {
const inicio = validar.validarFecha(body.inicio);
const fin = validar.validarFecha(body.fin);
const path = `csv/reporte.csv`;
const inicio = validarFecha(body.inicio);
const fin = validarFecha(body.fin);
const path = `server/uploads/reporte.csv`;
const data = [];
return Servicio.findAll({
where: {
[Op.and]: [
{ fechaInicio: { [Op.gte]: inicio } },
{ fechaInicio: { [Op.lte]: fin } },
{ fechaInicio: { [Op.gte]: inicio.format() } },
{ fechaInicio: { [Op.lte]: fin.format() } },
],
},
include: [
@@ -27,35 +29,33 @@ const reporte = async (body) => {
{ model: Carrera },
{ model: Status },
],
}).then((res) => {
for (let i = 0; i < res.length; i++)
data.push({
numeroCuenta: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
licenciatura: res[i].Carrera.carrera,
correo: res[i].correo,
fechaInicio: validar.crearDDMMAAAA(res[i].fechaInicio),
fechaFin: validar.crearDDMMAAAA(res[i].fechaFin),
fechaLiberacion: validar.crearDDMMAAAA(res[i].fechaLiberacion),
institucion: res[i].Programa.institucion,
dependencia: res[i].Programa.dependencia,
programa: res[i].Programa.programa,
profesor: res[i].profesor,
clave: res[i].Programa.clavePrograma,
status: res[i].Status.status,
order: [['fechaInicio']],
})
.then(async (res) => {
for (let i = 0; i < res.length; i++)
data.push({
numeroCuenta: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
licenciatura: res[i].Carrera.carrera,
correo: res[i].correo,
fechaInicio: helper.crearDDMMAAAA(res[i].fechaInicio),
fechaFin: helper.crearDDMMAAAA(res[i].fechaFin),
fechaLiberacion: helper.crearDDMMAAAA(res[i].fechaLiberacion),
institucion: res[i].Programa.institucion,
dependencia: res[i].Programa.dependencia,
programa: res[i].Programa.programa,
profesor: res[i].profesor,
clave: res[i].Programa.clavePrograma,
status: res[i].Status.status,
});
await helper.eliminarArchivo(path).catch((err) => {
console.log(err);
});
try {
fs.unlinkSync(path);
} catch (err) {
console.log(err);
}
fs.appendFile(path, convertArrayToCSV(data), (err) => {
if (err) throw new Error(err);
return helper.crearArchivo(path, convertArrayToCSV(data));
})
.then((res) => {
return path;
});
return {
message: `Se creo/actualizo correctamente el csv del reporte de servicios sociales.`,
};
});
};
module.exports = reporte;
+28 -27
View File
@@ -1,13 +1,14 @@
const moment = require('moment');
const { Op } = require('sequelize');
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 TipoUsuario = require('../../db/tablas/TipoUsuario');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Servicio = require(`${dbPath}/Servicio`);
const Status = require(`${dbPath}/Status`);
const Usuario = require(`${dbPath}/Usuario`);
const serviciosAdmin = async (body) => {
const pagina = validar.validarId(body.pagina);
const pagina = validar.validarNumero(body.pagina, true);
const where = body.idStatus
? { idStatus: validar.validarId(body.idStatus) }
: {};
@@ -17,43 +18,43 @@ const serviciosAdmin = async (body) => {
const numeroCuenta = body.numeroCuenta
? validar.validarNumeroCuenta(body.numeroCuenta)
: '';
const data = [];
return Servicio.findAll({
return Servicio.findAndCountAll({
include: [
{
model: Usuario,
include: { model: TipoUsuario },
where: {
usuario: { [Op.like]: `%${numeroCuenta}%` },
nombre: { [Op.like]: `%${nombre}%` },
[Op.and]: [
{ usuario: { [Op.like]: `%${numeroCuenta}%` } },
{ nombre: { [Op.like]: `%${nombre}%` } },
],
},
},
{ model: Carrera },
{ model: Status, where },
],
order: [['updatedAt', 'DESC']],
limit: 25,
offset: 25 * (pagina - 1),
}).then((res) => {
for (let i = pagina * 25 - 25; i < res.length && i < pagina * 25; i++)
let data = [];
for (let i = 0; i < res.rows.length; i++) {
data.push({
idServicio: res[i].idServicio,
fechaInicio: res[i].fechaInicio,
fechaFin: res[i].fechaFin,
createdAt: res[i].createdAt,
idServicio: res.rows[i].idServicio,
fechaInicio: moment(res.rows[i].fechaInicio).format(),
fechaFin: moment(res.rows[i].fechaFin).format(),
createdAt: moment(res.rows[i].createdAt).format(),
Usuario: {
idUsuario: res[i].Usuario.idUsuario,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
TipoUsuario: res[i].Usuario.TipoUsuario,
idUsuario: res.rows[i].Usuario.idUsuario,
usuario: res.rows[i].Usuario.usuario,
nombre: res.rows[i].Usuario.nombre,
},
Carrera: res[i].Carrera,
Status: res[i].Status,
Carrera: res.rows[i].Carrera,
Status: res.rows[i].Status,
});
return {
registros: res.length,
faltantes: res.length - data.length - (pagina - 1) * 25,
servicios: data,
};
}
return { count: res.count, serviciosAdmin: data };
});
};
@@ -1,14 +1,15 @@
const moment = require('moment');
const { Op } = require('sequelize');
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 TipoUsuario = require('../../db/tablas/TipoUsuario');
const Programa = require('../../db/tablas/Programa');
const dbPath = '../../db/tablas';
const Carrera = require(`${dbPath}/Carrera`);
const Programa = require(`${dbPath}/Programa`);
const Servicio = require(`${dbPath}/Servicio`);
const Status = require(`${dbPath}/Status`);
const Usuario = require(`${dbPath}/Usuario`);
const serviciosResponsable = async (body) => {
const pagina = validar.validarId(body.pagina);
const pagina = validar.validarNumero(body.pagina, true);
const idUsuario = validar.validarId(body.idUsuario);
const where = body.idStatus
? { idStatus: validar.validarId(body.idStatus) }
@@ -20,52 +21,52 @@ const serviciosResponsable = async (body) => {
const numeroCuenta = body.numeroCuenta
? validar.validarNumeroCuenta(body.numeroCuenta)
: '';
const data = [];
return Usuario.findOne({ where: { idUsuario } })
.then((res) => {
if (!res) throw new Error('No existe este usuario.');
if (res.idTipoUsuario !== 2)
throw new Error('No es un usuario tipo responsable.');
return Servicio.findAll({
return Servicio.findAndCountAll({
include: [
{ model: Programa, where: { idUsuario } },
{
model: Usuario,
include: { model: TipoUsuario },
where: {
usuario: { [Op.like]: `%${numeroCuenta}%` },
nombre: { [Op.like]: `%${nombre}%` },
[Op.and]: [
{ usuario: { [Op.like]: `%${numeroCuenta}%` } },
{ nombre: { [Op.like]: `%${nombre}%` } },
],
},
},
{ model: Carrera },
{ model: Status, where },
],
order: [['updatedAt', 'DESC']],
limit: 25,
offset: 25 * (pagina - 1),
});
})
.then((res) => {
for (let i = pagina * 25 - 25; i < res.length && i < pagina * 25; i++)
let data = [];
for (let i = 0; i < res.rows.length; i++) {
data.push({
idServicio: res[i].idServicio,
fechaInicio: res[i].fechaInicio,
fechaFin: res[i].fechaFin,
cartaTermino: res[i].cartaTermino,
idCuestionarioPrograma: res[i].idCuestionarioPrograma,
idServicio: res.rows[i].idServicio,
fechaInicio: moment(res.rows[i].fechaInicio).format(),
fechaFin: moment(res.rows[i].fechaFin).format(),
cartaTermino: res.rows[i].cartaTermino,
idCuestionarioPrograma: res.rows[i].idCuestionarioPrograma,
Usuario: {
idUsuario: res[i].Usuario.idUsuario,
usuario: res[i].Usuario.usuario,
nombre: res[i].Usuario.nombre,
TipoUsuario: res[i].Usuario.TipoUsuario,
idUsuario: res.rows[i].Usuario.idUsuario,
usuario: res.rows[i].Usuario.usuario,
nombre: res.rows[i].Usuario.nombre,
},
Carrera: res[i].Carrera,
Status: res[i].Status,
Carrera: res.rows[i].Carrera,
Status: res.rows[i].Status,
});
return {
registros: res.length,
faltantes: res.length - data.length - (pagina - 1) * 25,
servicios: data,
};
}
return { count: res.count, serviciosResponsable: data };
});
};
+4 -3
View File
@@ -1,5 +1,6 @@
const drive = require('../../helper/drive');
const validar = require('../../helper/validar');
const helperPath = '../../helper';
const drive = require(`${helperPath}/drive`);
const validar = require(`${helperPath}/validar`);
const Servicio = require('../../db/tablas/Servicio');
const update = async (body, files) => {
@@ -51,7 +52,7 @@ const update = async (body, files) => {
);
if (body.telefono)
dataUpdate.telefono = validar.validarNumero(body.telefono, 15);
if (validar.isObjectEmpty(dataUpdate))
if (validar.validarObjetoVacio(dataUpdate))
throw new Error(
'No se envio nada para actualizar este Servicio Social'
);
+5 -5
View File
@@ -1,8 +1,9 @@
require('../../config/config');
const validar = require('../../helper/validar');
const axios = require('axios');
const Usuario = require('../../db/tablas/Usuario');
const Carrera = require('../../db/tablas/Carrera');
const { validarNumeroCuenta } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Usuario = require(`${dbPath}/Usuario`);
const Carrera = require(`${dbPath}/Carrera`);
const creditosCarreras = [
{ carrera: 'LIC. EN ACTUARIA', creditos: 70 },
{ carrera: 'LIC. EN ARQUITECTURA', creditos: 70 },
@@ -32,7 +33,7 @@ const creditosCarreras = [
];
const escolares = async (body) => {
const numeroCuenta = validar.validarNumeroCuenta(body.numeroCuenta);
const numeroCuenta = validarNumeroCuenta(body.numeroCuenta);
let alumno;
return axios({
@@ -63,7 +64,6 @@ const escolares = async (body) => {
alumno.nombre = alumno.nombre.replace('Ã', 'Ñ');
alumno.nombre = alumno.nombre.replace('‘', '');
}
return Carrera.findOne({ where: { carrera: alumno.carrera } });
})
.then((res) => {
+6 -5
View File
@@ -1,14 +1,15 @@
const encriptar = require('../../helper/encriptar');
const validar = require('../../helper/validar');
const { crearToken } = require('../../middleware/autentificacion');
const Usuario = require('../../db/tablas/Usuario');
const TipoUsuario = require('../../db/tablas/TipoUsuario');
const { comparar } = require('../../helper/encriptar');
const dbPath = '../../db/tablas';
const Usuario = require(`${dbPath}/Usuario`);
const TipoUsuario = require(`${dbPath}/TipoUsuario`);
const login = async (body) => {
const usuario = validar.validar(body.usuario, 'El usuario', 60);
const password = validar.validarAlfanumerico(
body.password,
'El password',
'La contraseña',
20
);
@@ -18,7 +19,7 @@ const login = async (body) => {
}).then((res) => {
if (!res) throw new Error('No existe este usuario.');
if (!res.activo) throw new Error('Este usuario no esta activo.');
if (encriptar.comparar(password, res.password)) {
if (comparar(password, res.password)) {
delete res.dataValues.password;
delete res.dataValues.activo;
return {
@@ -1,12 +1,14 @@
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 helperPath = '../../helper';
const { validarId } = require(`${helperPath}/validar`);
const gmail = require(`${helperPath}/gmail`);
const correos = require(`${helperPath}/correos`);
const encriptar = require(`${helperPath}/encriptar`);
const dbPath = '../../db/tablas';
const Usuario = require(`${dbPath}/Usuario`);
const Servicio = require(`${dbPath}/Servicio`);
const newPasswordAlumno = async (body) => {
const idServicio = validar.validarId(body.idServicio);
const idServicio = validarId(body.idServicio);
const password = encriptar.generarPassword();
let idUsuario;
let correo = {};
@@ -1,11 +1,12 @@
const gmail = require('../../helper/gmail');
const correos = require('../../helper/correos');
const encriptar = require('../../helper/encriptar');
const validar = require('../../helper/validar');
const helperPath = '../../helper';
const { validarId } = require(`${helperPath}/validar`);
const gmail = require(`${helperPath}/gmail`);
const correos = require(`${helperPath}/correos`);
const encriptar = require(`${helperPath}/encriptar`);
const Usuario = require('../../db/tablas/Usuario');
const newPasswordResponsable = async (body) => {
const idUsuario = await validar.validarId(body.idUsuario);
const idUsuario = await validarId(body.idUsuario);
const password = encriptar.generarPassword();
let correo = {};
+7 -28
View File
@@ -1,36 +1,15 @@
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const { validarId } = require('../../helper/validar');
const Usuario = require('../../db/tablas/Usuario');
const TipoUsuario = require('../../db/tablas/TipoUsuario');
const responsable = async (body) => {
const pagina = validar.validarId(body.pagina);
const nombre = body.nombre
? validar.validarTexto(body.nombre, 'El nombre', 60)
: '';
const correo = body.correo
? validar.validar(body.correo, 'El correo', 1000)
: '';
const data = [];
const idUsuario = validarId(body.idUsuario);
return Usuario.findAll({
where: {
usuario: { [Op.like]: `%${correo}%` },
nombre: { [Op.like]: `%${nombre}%` },
idTipoUsuario: 2,
},
include: [{ model: TipoUsuario }],
return Usuario.findOne({
where: { idUsuario },
}).then((res) => {
for (let i = pagina * 25 - 25; i < res.length && i < pagina * 25; i++) {
delete res[i].dataValues.password;
delete res[i].dataValues.idTipoUsuario;
data.push(res[i]);
}
return {
registros: res.length,
faltantes: res.length - data.length - (pagina - 1) * 25,
servicios: data,
};
delete res.dataValues.password;
delete res.dataValues.idTipoUsuario;
return res;
});
};
@@ -11,7 +11,7 @@ const responsableUpdate = async (body) => {
if (!res)
throw new Error('No existe este responsable en la base de datos.');
if (res.idTipoUsuario !== 2)
throw new Error('No es un usuaior de tipo responasble.');
throw new Error('Este usuario no es un responsable de programa.');
if (body.correo) {
const yaUsado = await Usuario.findOne({
where: { usuario: body.correo, idUsuario: { [Op.not]: idUsuario } },
@@ -26,7 +26,7 @@ const responsableUpdate = async (body) => {
if (body.nombre)
dataUpdate.nombre = validar.validarTexto(body.nombre, 'el nombre', 70);
if (validar.isObjectEmpty(dataUpdate))
if (validar.validarObjetoVacio(dataUpdate))
throw new Error('No se a envio nada para actualizar.');
return Usuario.update(dataUpdate, { where: { idUsuario } });
})
+33
View File
@@ -0,0 +1,33 @@
const { Op } = require('sequelize');
const validar = require('../../helper/validar');
const Usuario = require('../../db/tablas/Usuario');
const responsables = async (body) => {
const pagina = validar.validarNumero(body.pagina, true);
const nombre = body.nombre
? validar.validarTexto(body.nombre, 'El nombre', 60)
: '';
const correo = body.correo
? validar.validar(body.correo, 'El correo', 1000)
: '';
return Usuario.findAndCountAll({
where: {
[Op.and]: [
{ usuario: { [Op.like]: `%${correo}%` } },
{ nombre: { [Op.like]: `%${nombre}%` } },
{ idTipoUsuario: 2 },
],
},
limit: 25,
offset: 25 * (pagina - 1),
}).then((res) => {
for (let i = 0; i < res.rows.length; i++) {
delete res.rows[i].dataValues.password;
delete res.rows[i].dataValues.idTipoUsuario;
}
return { count: res.count, responsables: res.rows };
});
};
module.exports = responsables;