This commit is contained in:
2021-09-02 09:33:24 -05:00
parent ff123d4ad6
commit 7fca378182
5 changed files with 89 additions and 29 deletions
+17 -13
View File
@@ -1,7 +1,7 @@
const moment = require('moment');
const Infraccion = require('../../db/tablas/Infraccion');
const { validarId, validarTexto } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Infraccion = require(`${dbPath}/Infraccion`);
const Prestamo = require(`${dbPath}/Prestamo`);
const Usuario = require(`${dbPath}/Usuario`);
const Multa = require(`${dbPath}/Multa`);
@@ -10,13 +10,14 @@ const multar = async (body) => {
const idInfraccion = validarId(body.idInfraccion);
const idPrestamo = validarId(body.idPrestamo);
const descripcion = validarTexto(body.descripcion, 'La descripción', 500);
let infraccion = {};
let prestamo = {};
let fechaFin = moment();
return Infraccion.findOne({ where: { idInfraccion } })
.then((res) => {
if (!res) throw new Error('No existe esta infracción.');
infraccion = res;
if (res.gravedad == '1') fechaFin.add(7, 'd');
else fechaFin.add(100, 'y');
return Prestamo.findOne({
where: { idPrestamo },
include: [{ model: Usuario }],
@@ -24,22 +25,25 @@ const multar = async (body) => {
})
.then((res) => {
if (!res) throw new Error('No existe este prestamo.');
console.log(res.dataValues);
return Usuario.update(
{ multa: true },
{ where: { idUsuario: res.Usuario.idUsuario } }
);
prestamo = res;
return Multa.findOne({ where: { idPrestamo } });
})
.then((res) => {
if (infraccion.gravedad === '1') fechaFin.add(7, 'd');
else fechaFin.add(100, 'y');
return Multa.create({
if (res)
throw new Error('A este prestamo ya se le ha asignado una multa.');
return Usuario.update(
{ multa: true },
{ where: { idUsuario: prestamo.Usuario.idUsuario } }
);
})
.then((res) =>
Multa.create({
descripcion,
idInfraccion,
idPrestamo,
fechaFin: fechaFin.format(),
});
})
})
)
.then((res) => ({ message: `Se multo correctamente al alumno.` }));
};
+22
View File
@@ -0,0 +1,22 @@
const { validarId, validarTexto } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Reporte = require(`${dbPath}/Reporte`);
const Prestamo = require(`${dbPath}/Prestamo`);
const reportar = async (body) => {
const idPrestamo = validarId(body.idPrestamo);
const descripcion = validarTexto(body.descripcion, 'La descripción', 500);
return Prestamo.findOne({ where: { idPrestamo } })
.then((res) => {
if (!res) throw new Error('No existe este prestamo.');
return Reporte.findOne({ where: { idPrestamo } });
})
.then((res) => {
if (res) throw new Error('Ya existe un reporte con este prestamo.');
return Reporte.create({ descripcion, idPrestamo });
})
.then((res) => ({ message: 'Se levanto correctamente el reporte.' }));
};
module.exports = reportar;
@@ -0,0 +1,19 @@
const { validarId, validarTexto } = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Reporte = require(`${dbPath}/Reporte`);
const Equipo = require(`${dbPath}/Equipo`);
const reportar = async (body) => {
console.log(body);
const idEquipo = validarId(body.idEquipo);
const descripcion = validarTexto(body.descripcion, 'La descripción', 500);
return Equipo.findOne({ where: { idEquipo } })
.then((res) => {
if (!res) throw new Error('No existe este equipo.');
return Reporte.create({ descripcion, idEquipo });
})
.then((res) => ({ message: 'Se levanto correctamente el reporte.' }));
};
module.exports = reportar;