35 lines
1.0 KiB
JavaScript
35 lines
1.0 KiB
JavaScript
const bcrypt = require('bcrypt')
|
|
const validador = require('../validador')
|
|
const Operador = require('../../db/tables/Operador')
|
|
const TipoOperador = require('../../db/tables/TipoOperador')
|
|
|
|
const login = async (body) => {
|
|
let nombre = await validador.validarTexto(body.nombre).then((res) => res)
|
|
let password = await validador.validarTexto(body.password).then((res) => res)
|
|
let busqueda = {
|
|
where: { nombre },
|
|
include: [{ model: TipoOperador }],
|
|
}
|
|
|
|
return Operador.findOne(busqueda).then((res) => {
|
|
if (res) {
|
|
if (!bcrypt.compareSync(password, res.password))
|
|
validador.error('El Operador o contraseña son incorrectos.', 400)
|
|
return {
|
|
data: {
|
|
idOperador: res.idOperador,
|
|
nombre: res.nombre,
|
|
TipoOperador: {
|
|
idTipoOperador: res.TipoOperador.idTipoOperador,
|
|
nombre: res.TipoOperador.nombre,
|
|
},
|
|
},
|
|
code: 200,
|
|
}
|
|
}
|
|
validador.error('El usuario no existe.', 400)
|
|
})
|
|
}
|
|
|
|
module.exports = login
|