ya asigna mesa
This commit is contained in:
@@ -5,31 +5,27 @@ const Plantel = require('../../db/tables/Plantel')
|
||||
|
||||
const get = async (body) => {
|
||||
let idPlantel = await validador.validarId(body.idPlantel).then((res) => res)
|
||||
let busquedaCarrera = {
|
||||
where: { idPlantel: body.idPlantel },
|
||||
include: [{ model: Carrera }],
|
||||
}
|
||||
let busquedaPlantel = { where: idPlantel }
|
||||
|
||||
return Plantel.findOne(busquedaPlantel)
|
||||
return Plantel.findOne({ where: idPlantel })
|
||||
.then((res) => {
|
||||
if (!res) validador.error('El plantel no existe.', 400)
|
||||
return CarreraPlantel.findAll(busquedaCarrera)
|
||||
return CarreraPlantel.findAll({
|
||||
where: { idPlantel: body.idPlantel },
|
||||
include: [{ model: Carrera }],
|
||||
})
|
||||
})
|
||||
.then((res) => {
|
||||
let data = []
|
||||
|
||||
for (let i = 0; i < res.length; i++) {
|
||||
let carrera = {
|
||||
for (let i = 0; i < res.length; i++)
|
||||
data.push({
|
||||
idCarreraPlantel: res[i].idCarreraPlantel,
|
||||
Carrera: {
|
||||
idCarrera: res[i].Carrera.idCarrera,
|
||||
carrera: res[i].Carrera.carrera,
|
||||
nivel: res[i].Carrera.nivel,
|
||||
},
|
||||
}
|
||||
data.push(carrera)
|
||||
}
|
||||
})
|
||||
return { code: 200, data }
|
||||
})
|
||||
}
|
||||
|
||||
@@ -6,15 +6,14 @@ const Status = require('../../db/tables/Status')
|
||||
|
||||
const get = async (body) => {
|
||||
let idEquipo = await validador.validarId(body.idEquipo).then((res) => res)
|
||||
let busqueda = {
|
||||
|
||||
return Equipo.findOne({
|
||||
where: { idEquipo },
|
||||
include: [
|
||||
{ model: Carrito, include: [{ model: TipoCarrito }] },
|
||||
{ model: Status },
|
||||
],
|
||||
}
|
||||
|
||||
return Equipo.findOne(busqueda).then((res) => {
|
||||
}).then((res) => {
|
||||
if (!res) validador.error('No existe el equipo.', 400)
|
||||
return {
|
||||
code: 200,
|
||||
|
||||
@@ -1,19 +1,14 @@
|
||||
const moment = require('moment')
|
||||
const Horario = require('../../db/tables/Horario')
|
||||
const validador = require('../validador')
|
||||
|
||||
const get = async () => {
|
||||
return Horario.findAll().then((res) => {
|
||||
let data = []
|
||||
let now = moment().add(15, 'minutes')
|
||||
let data = []
|
||||
|
||||
for (let i = 0; i < res.length; i++) {
|
||||
let hora = res[i].horario.substr(res[i].horario.indexOf('-') + 1)
|
||||
let horaNumero = Number(hora.substr(0, hora.indexOf(':')))
|
||||
let horaLimite = moment()
|
||||
|
||||
horaLimite.set('hour', horaNumero)
|
||||
horaLimite.set('minute', 0)
|
||||
horaLimite.set('second', 0)
|
||||
let horaLimite = validador.stringToMoment(res[i].horario)
|
||||
|
||||
/* Para la noche xd */
|
||||
// horaLimite.add(1, 'days')
|
||||
|
||||
@@ -8,21 +8,18 @@ const create = async (body) => {
|
||||
let password = await validador
|
||||
.validarTexto(body.password)
|
||||
.then((res) => bcrypt.hashSync(res, Number(process.env.SALT_ROUNDS)))
|
||||
let busqueda = { where: { nombre } }
|
||||
|
||||
return Operador.findOne(busqueda)
|
||||
return Operador.findOne({ where: { nombre } })
|
||||
.then((res) => {
|
||||
let data = {
|
||||
if (res) validador.error('Ya existe un operador con este nombre.', 400)
|
||||
return Operador.create({
|
||||
nombre,
|
||||
password,
|
||||
idTipoOperador: 2,
|
||||
}
|
||||
|
||||
if (res) validador.error('Ya existe un operador con este nombre.', 400)
|
||||
return Operador.create(data)
|
||||
})
|
||||
})
|
||||
.then((res) => {
|
||||
return { code: 201, message: 'Se creo un operador correctamente' }
|
||||
return { code: 201, message: 'Haz creado un operador.' }
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -2,24 +2,20 @@ const Operador = require('../../db/tables/Operador')
|
||||
const TipoOperador = require('../../db/tables/TipoOperador')
|
||||
|
||||
const get = async () => {
|
||||
let busqueda = {
|
||||
return Operador.findAll({
|
||||
include: [{ model: TipoOperador }],
|
||||
}
|
||||
|
||||
return Operador.findAll(busqueda).then((res) => {
|
||||
}).then((res) => {
|
||||
let data = []
|
||||
|
||||
for (let i = 0; i < res.length; i++) {
|
||||
let operador = {
|
||||
data.push({
|
||||
idOperador: res[i].idOperador,
|
||||
nombre: res[i].nombre,
|
||||
TipoOperador: {
|
||||
idTipoOperador: res[i].TipoOperador.idTipoOperador,
|
||||
nombre: res[i].TipoOperador.nombre,
|
||||
},
|
||||
}
|
||||
|
||||
data.push(operador)
|
||||
})
|
||||
}
|
||||
return {
|
||||
code: 200,
|
||||
|
||||
@@ -6,15 +6,14 @@ 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 = {
|
||||
|
||||
return Operador.findOne({
|
||||
where: { nombre },
|
||||
include: [{ model: TipoOperador }],
|
||||
}
|
||||
|
||||
return Operador.findOne(busqueda).then((res) => {
|
||||
}).then((res) => {
|
||||
if (res) {
|
||||
if (!bcrypt.compareSync(password, res.password))
|
||||
validador.error('El Operador o contraseña son incorrectos.', 400)
|
||||
validador.error('La contraseña es incorrecta.', 400)
|
||||
return {
|
||||
data: {
|
||||
idOperador: res.idOperador,
|
||||
@@ -23,11 +22,12 @@ const login = async (body) => {
|
||||
idTipoOperador: res.TipoOperador.idTipoOperador,
|
||||
nombre: res.TipoOperador.nombre,
|
||||
},
|
||||
token: '',
|
||||
},
|
||||
code: 200,
|
||||
}
|
||||
}
|
||||
validador.error('El usuario no existe.', 400)
|
||||
validador.error('El operador no existe.', 400)
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
const { Op } = require('sequelize')
|
||||
const validador = require('../validador')
|
||||
const Prestamo = require('../../db/tables/Prestamo')
|
||||
const Operador = require('../../db/tables/Operador')
|
||||
@@ -10,27 +11,38 @@ const activar = async (body) => {
|
||||
|
||||
return Operador.findOne({ where: { idOperador } })
|
||||
.then((res) => {
|
||||
if (!res) validador.error('No existe este operador.', 400)
|
||||
if (!res) validador.error('No existe el operador.', 400)
|
||||
return Prestamo.findOne({
|
||||
where: { idPrestamo },
|
||||
include: [{ model: Equipo }],
|
||||
})
|
||||
})
|
||||
.then((res) => {
|
||||
if (!res) validador.error('No existe ese prestamo.', 400)
|
||||
if (!res.activo && !res.idOperadorRegreso && !res.idOperadorEntrega)
|
||||
validador.error('Este prestamo fue cancelado.', 400)
|
||||
if (!res) validador.error('No existe este prestamo.', 400)
|
||||
if (!res.idOperadorEntrega) {
|
||||
if (!res.activo) validador.error('Este prestamo fue cancelado.', 400)
|
||||
if (res.Equipo.activo)
|
||||
validador.error(
|
||||
'No se ha regresado el equipo del previo prestamo.',
|
||||
400
|
||||
)
|
||||
}
|
||||
if (res.idOperadorEntrega)
|
||||
validador.error('Ya se ha entregado este equipo.', 400)
|
||||
if (res.Equipo.activo) validador.error('Este equipo ya esta en uso.', 400)
|
||||
validador.error('Ya se ha entregado el equipo al usuario.', 400)
|
||||
return Equipo.update(
|
||||
{ activo: true },
|
||||
{ where: { idEquipo: res.idEquipo }, order: [['updatedAt', 'DESC']] }
|
||||
{ where: { idEquipo: res.idEquipo } }
|
||||
)
|
||||
})
|
||||
.then(() => {
|
||||
return Mesa.findAll({
|
||||
where: { [Op.and]: [{ activo: false }, { idStatus: 1 }] },
|
||||
order: [['updatedAt', 'DESC']],
|
||||
})
|
||||
})
|
||||
.then((res) => {
|
||||
return Prestamo.update(
|
||||
{ idOperadorEntrega: idOperador },
|
||||
{ idOperadorEntrega: idOperador, idMesa: res[0].idMesa },
|
||||
{ where: { idPrestamo } }
|
||||
)
|
||||
})
|
||||
|
||||
@@ -40,6 +40,7 @@ const equipo = async (body) => {
|
||||
},
|
||||
],
|
||||
where: { idStatus: 1 },
|
||||
order: [['updatedAt', 'DESC']],
|
||||
}
|
||||
|
||||
return Prestamo.findOne(busquedaPrestamo)
|
||||
@@ -112,39 +113,7 @@ const equipo = async (body) => {
|
||||
return {
|
||||
code: 200,
|
||||
data: {
|
||||
idPrestamo: res.idPrestamo,
|
||||
horaFin: res.horaFin,
|
||||
activo: res.activo,
|
||||
createdAt: res.createdAt,
|
||||
updatedAt: res.updatedAt,
|
||||
idUsuario: res.idUsuario,
|
||||
idOperadorEntrega: res.idOperadorEntrega,
|
||||
idOperadorRegreso: res.idOperadorRegreso,
|
||||
Horario: {
|
||||
idHorario: res.Horario.idHorario,
|
||||
horario: res.Horario.horario,
|
||||
},
|
||||
Equipo: {
|
||||
idEquipo: res.Equipo.idEquipo,
|
||||
noSerie: res.Equipo.noSerie,
|
||||
noInventario: res.Equipo.noInventario,
|
||||
sobrenombre: res.Equipo.sobrenombre,
|
||||
activo: res.Equipo.activo,
|
||||
updatedAt: res.Equipo.updatedAt,
|
||||
Status: {
|
||||
idStatus: res.Equipo.Status.idStatus,
|
||||
status: res.Equipo.Status.status,
|
||||
},
|
||||
Carrito: {
|
||||
idCarrito: res.Equipo.Carrito.idCarrito,
|
||||
sobrenombre: res.Equipo.Carrito.sobrenombre,
|
||||
kiosko: res.Equipo.Carrito.kiosko,
|
||||
TipoCarrito: {
|
||||
idTipoCarrito: res.Equipo.Carrito.TipoCarrito.idTipoCarrito,
|
||||
nombre: res.Equipo.Carrito.TipoCarrito.nombre,
|
||||
},
|
||||
},
|
||||
},
|
||||
prestamo: validador.objetoPrestamoEquipo(res),
|
||||
qr: `https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=${res.idPrestamo}`,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -17,15 +17,20 @@ const create = async (body) => {
|
||||
.then((res) => res)
|
||||
let correo = await validador.validarEmail(body.email).then((res) => res)
|
||||
let telefono = body.telefono
|
||||
let idPlantel = await validador.validarId(body.idPlantel).then((res) => res)
|
||||
let idCarreraPlantel = await validador
|
||||
.validarId(body.idCarreraPlantel)
|
||||
.then((res) => res)
|
||||
let idTipoUsuario = 1
|
||||
let idTipoUsuario
|
||||
|
||||
if (idPlantel >= 200 && idPlantel < 300) idTipoUsuario = 1
|
||||
else idTipoUsuario = 2
|
||||
|
||||
return Usuario.findOne({ where: { idUsuario } })
|
||||
.then((res) => {
|
||||
if (res) validador.error('El numero de cuanta ya a sido registrado.', 400)
|
||||
let data = {
|
||||
if (res)
|
||||
validador.error('El número de cuenta ya ha sido registrado.', 400)
|
||||
return Usuario.create({
|
||||
idUsuario,
|
||||
password,
|
||||
nombre,
|
||||
@@ -37,13 +42,12 @@ const create = async (body) => {
|
||||
foto: '',
|
||||
idTipoUsuario,
|
||||
idCarreraPlantel,
|
||||
}
|
||||
return Usuario.create(data)
|
||||
})
|
||||
})
|
||||
.then((res) => {
|
||||
return {
|
||||
code: 201,
|
||||
message: 'Se registro correctamente el numero de cuenta',
|
||||
message: 'Te haz registrado correctamente.',
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
const { Op } = require('sequelize')
|
||||
const validador = require('../validador')
|
||||
const Usuario = require('../../db/tables/Usuario')
|
||||
const TipoUsuario = require('../../db/tables/TipoUsuario')
|
||||
@@ -5,10 +6,18 @@ const CarreraPlantel = require('../../db/tables/CarreraPlantel')
|
||||
const Carrera = require('../../db/tables/Carrera')
|
||||
const Plantel = require('../../db/tables/Plantel')
|
||||
const Prestamo = require('../../db/tables/Prestamo')
|
||||
const Mesa = require('../../db/tables/Mesa')
|
||||
const Status = require('../../db/tables/Status')
|
||||
const Equipo = require('../../db/tables/Equipo')
|
||||
const Carrito = require('../../db/tables/Carrito')
|
||||
const TipoCarrito = require('../../db/tables/TipoCarrito')
|
||||
const Horario = require('../../db/tables/Horario')
|
||||
|
||||
const get = async (body) => {
|
||||
let idUsuario = await validador.validarId(body.idUsuario).then((res) => res)
|
||||
let busqueda = {
|
||||
let usuario = {}
|
||||
|
||||
return Usuario.findOne({
|
||||
where: { idUsuario },
|
||||
include: [
|
||||
{ model: TipoUsuario },
|
||||
@@ -17,13 +26,10 @@ const get = async (body) => {
|
||||
include: [{ model: Plantel }, { model: Carrera }],
|
||||
},
|
||||
],
|
||||
}
|
||||
|
||||
return Usuario.findOne(busqueda).then((res) => {
|
||||
if (!res) validador.error('No existe este número de cuenta.', 400)
|
||||
return {
|
||||
code: 200,
|
||||
data: {
|
||||
})
|
||||
.then((res) => {
|
||||
if (!res) validador.error('Ese número de cuenta no esta registrado.', 400)
|
||||
usuario = {
|
||||
idUsuario: res.idUsuario,
|
||||
nombre: res.nombre,
|
||||
apPaterno: res.apPaterno,
|
||||
@@ -50,9 +56,32 @@ const get = async (body) => {
|
||||
nivel: res.CarreraPlantel.Carrera.nivel,
|
||||
},
|
||||
},
|
||||
},
|
||||
}
|
||||
})
|
||||
}
|
||||
return Prestamo.findAll({
|
||||
where: { [Op.and]: [{ idUsuario }, { idSalon: null }] },
|
||||
include: [
|
||||
{ model: Mesa, include: [{ model: Status }] },
|
||||
{ model: Horario },
|
||||
{
|
||||
model: Equipo,
|
||||
include: [
|
||||
{ model: Status },
|
||||
{ model: Carrito, include: [{ model: TipoCarrito }] },
|
||||
],
|
||||
},
|
||||
],
|
||||
})
|
||||
})
|
||||
.then((res) => {
|
||||
let prestamos = []
|
||||
|
||||
for (let i = 0; i < res.length; i++)
|
||||
prestamos.push(validador.objetoPrestamoEquipo(res[i]))
|
||||
return {
|
||||
code: 200,
|
||||
data: { usuario, prestamos },
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
module.exports = get
|
||||
|
||||
@@ -6,24 +6,24 @@ const TipoUsuario = require('../../db/tables/TipoUsuario')
|
||||
const login = async (body) => {
|
||||
let idUsuario = await validador.validarId(body.idUsuario).then((res) => res)
|
||||
let password = await validador.validarTexto(body.password).then((res) => res)
|
||||
let busqueda = {
|
||||
|
||||
return Usuario.findOne({
|
||||
where: { idUsuario },
|
||||
include: [{ model: TipoUsuario }],
|
||||
}
|
||||
|
||||
return Usuario.findOne(busqueda).then((res) => {
|
||||
}).then((res) => {
|
||||
if (res) {
|
||||
if (!bcrypt.compareSync(password, res.password))
|
||||
validador.error('El usuario o contraseña son incorrectos.', 400)
|
||||
validador.error('La contraseña es incorrecta.', 400)
|
||||
return {
|
||||
code: 200,
|
||||
data: {
|
||||
idUsuario: res.idUsuario,
|
||||
nombre: res.nombre,
|
||||
apPaterno: res.apPaterno,
|
||||
apMaterno: res.apMaterno,
|
||||
TipoUsuario: res.TipoUsuario,
|
||||
token: '',
|
||||
},
|
||||
code: 200,
|
||||
}
|
||||
}
|
||||
validador.error('El usuario no existe.', 400)
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
const validator = require('validator')
|
||||
const moment = require('moment')
|
||||
|
||||
const objetoError = (message, code) => {
|
||||
return { message, code }
|
||||
@@ -99,6 +100,17 @@ const objetoPrestamoEquipo = (prestamo) => {
|
||||
return data
|
||||
}
|
||||
|
||||
const stringToMoment = (strHour) => {
|
||||
let strHora = strHour.substr(strHour.indexOf('-') + 1)
|
||||
let horaNumero = Number(strHora.substr(0, strHora.indexOf(':')))
|
||||
let hora = moment()
|
||||
|
||||
hora.set('hour', horaNumero)
|
||||
hora.set('minute', 0)
|
||||
hora.set('second', 0)
|
||||
return hora
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
error,
|
||||
validarId,
|
||||
@@ -106,4 +118,5 @@ module.exports = {
|
||||
validarEmail,
|
||||
validarNumero,
|
||||
objetoPrestamoEquipo,
|
||||
stringToMoment,
|
||||
}
|
||||
|
||||
@@ -24,7 +24,7 @@ app.post(`${route}/create`, (req, res) => {
|
||||
app.post(`${route}/login`, (req, res) => {
|
||||
return login(req.body)
|
||||
.then((data) => {
|
||||
res.status(data.code).json({ operador: data.data })
|
||||
res.status(data.code).json(data.data)
|
||||
})
|
||||
.catch((err) => res.status(err.code).json({ err: err.message }))
|
||||
})
|
||||
|
||||
@@ -36,7 +36,7 @@ app.get(`${route}/activo`, (req, res) => {
|
||||
app.post(`${route}/equipo`, (req, res) => {
|
||||
return equipo(req.body)
|
||||
.then((data) => {
|
||||
res.status(data.code).json({ prestamo: data.data })
|
||||
res.status(data.code).json(data.data)
|
||||
})
|
||||
.catch((err) => {
|
||||
res.status(err.code).json({ err: err.message })
|
||||
|
||||
@@ -8,9 +8,12 @@ const route = '/usuario'
|
||||
app.get(`${route}`, (req, res) => {
|
||||
return get(req.query)
|
||||
.then((data) => {
|
||||
res.status(data.code).json({ usuario: data.data })
|
||||
res.status(data.code).json(data.data)
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err)
|
||||
res.status(err.code).json({ err: err.message })
|
||||
})
|
||||
.catch((err) => res.status(err.code).json({ err: err.message }))
|
||||
})
|
||||
|
||||
app.post(`${route}/create`, (req, res) => {
|
||||
@@ -24,7 +27,7 @@ app.post(`${route}/create`, (req, res) => {
|
||||
app.post(`${route}/login`, (req, res) => {
|
||||
return login(req.body)
|
||||
.then((data) => {
|
||||
res.status(data.code).json({ usuario: data.data })
|
||||
res.status(data.code).json(data.data)
|
||||
})
|
||||
.catch((err) => res.status(err.code).json({ err: err.message }))
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user