const { Op } = require('sequelize'); const validar = require('../../helper/validar'); const Usuario = require('../../db/tablas/Usuario'); const TipoUsuario = require('../../db/tablas/TipoUsuario'); const responsable = async (body) => { let pagina = validar.validarId(body.pagina); let nombre = body.nombre ? validar.validarTexto(body.nombre, 'El nombre', 60) : ''; let correo = body.correo ? validar.validar(body.correo, 'El correo', 1000) : ''; return Usuario.findAll({ where: { usuario: { [Op.like]: `%${correo}%` }, nombre: { [Op.like]: `%${nombre}%` }, idTipoUsuario: 2, }, include: [{ model: TipoUsuario }], }).then((res) => { let data = []; for (let i = pagina * 25 - 25; i < res.length && i < pagina * 25; i++) data.push({ idUsuario: res[i].idUsuario, usuario: res[i].usuario, nombre: res[i].nombre, activo: res[i].activo, TipoUsuario: { idTipoUsuario: res[i].TipoUsuario.idTipoUsuario, tipoUsuario: res[i].TipoUsuario.tipoUsuario, }, }); return { registros: res.length, faltantes: res.length - data.length - (pagina - 1) * 25, servicios: data, }; }); }; module.exports = responsable;