23 lines
827 B
JavaScript
23 lines
827 B
JavaScript
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;
|