Files
2022-02-13 19:10:21 -06:00

37 lines
1.2 KiB
JavaScript

const validar = require('../../helper/validar');
const dbPath = '../../db/tablas';
const Carrito = require(`${dbPath}/Carrito`);
const TipoCarrito = require(`${dbPath}/TipoCarrito`);
const update = async (body) => {
const idCarrito = validar.validarNumeroEntero(
body.idCarrito,
'id carrito',
true
);
const idTipoCarrito = body.idTipoCarrito
? validar.validarNumeroEntero(body.idTipoCarrito, 'id tipo carrito', true)
: '';
let update = {};
return TipoCarrito.findOne({ where: { idTipoCarrito } })
.then((res) => {
if (idTipoCarrito) {
if (!res) throw new Error('No existe este tipo carrito.');
update.idTipoCarrito = idTipoCarrito;
}
return Carrito.findOne({ where: { idCarrito } });
})
.then((res) => {
if (!res) throw new Error('No existe este carrito.');
if (body.activo === 'desactivar') update.activo = false;
else if (body.activo === 'activar') update.activo = true;
if (validar.validarObjetoVacio(update))
throw new Error('No se envió nada para actualizar.');
return Carrito.update(update, { where: { idCarrito } });
})
.then(() => ({ message: 'Se actualizó correctamente el carrito.' }));
};
module.exports = update;