ya multo en caso de que se demore en entregar el equipo

This commit is contained in:
Andres2908
2021-09-23 16:30:11 -05:00
parent 8356ae53ca
commit 33f628a810
2 changed files with 21 additions and 9 deletions
+4 -3
View File
@@ -18,10 +18,9 @@ const multar = async (body) => {
);
let prestamo = {};
let fechaFin = moment();
return Operador.findOne({ where: { idOperador: idOperadorMulta } })
.then((res) => {
if (!res) throw new Error('No existe esta este operador.');
if (!res) throw new Error('No existe este operador.');
return Infraccion.findOne({ where: { idInfraccion } });
})
.then((res) => {
@@ -55,7 +54,9 @@ const multar = async (body) => {
idPrestamo,
})
)
.then((res) => ({ message: `Se levantó correctamente el reporte de multa.` }));
.then((res) => ({
message: `Se levantó correctamente el reporte de multa.`,
}));
};
module.exports = multar;
+17 -6
View File
@@ -1,5 +1,7 @@
const moment = require('moment');
const multar = require('../Multa/multar');
const { validarId } = require('../../helper/validar');
const prestamo = require('./prestamoUsuario');
const dbPath = '../../db/tablas';
const Equipo = require(`${dbPath}/Equipo`);
const Operador = require(`${dbPath}/Operador`);
@@ -10,7 +12,6 @@ const regresar = async (body) => {
const idOperadorRegreso = validarId(body.idOperadorRegreso);
const ahora = moment();
// Multar por hora de entrega
return Operador.findOne({ where: { idOperador: idOperadorRegreso } })
.then((res) => {
if (!res) throw new Error('No existe este operador.');
@@ -19,18 +20,28 @@ const regresar = async (body) => {
include: [{ model: Equipo }],
});
})
.then((res) => {
if (!res) throw new Error('No existe este prestamo.');
if (!res.activo) throw new Error('Este prestamo ya no esta activo.');
.then(async (res) => {
if (!res) throw new Error('No existe este préstamo.');
if (!res.activo) throw new Error('Este préstamo ya no esta activo.');
if (!res.Equipo.enUso)
throw new Error('Aun no se ha entregado el equipo al usuario.');
if (res.horaFin > ahora) {
await multar({
idOperadorMulta: idOperadorRegreso,
idPrestamo: res.idPrestamo,
idInfraccion: 1,
descripcion: 'Demora',
});
}
return Equipo.update(
{ enUso: false, apartado: false },
{ where: { idEquipo: res.Equipo.idEquipo } }
);
})
.then((res) => {
Prestamo.update(
.then(async (res) => {
await Prestamo.update(
{ idOperadorRegreso, horaEntrega: ahora.format(), activo: false },
{ where: { idPrestamo } }
);