carrito update listo

This commit is contained in:
xXpuma99Xx
2022-02-13 12:24:43 -06:00
parent 79f61d5a1e
commit fb1f3d8258
4 changed files with 37 additions and 18 deletions
+19 -5
View File
@@ -1,18 +1,32 @@
const { validarNumeroEntero } = require('../../helper/validar');
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 = validarNumeroEntero(body.idCarrito, 'id carrito', true);
const idCarrito = validar.validarNumeroEntero(
body.idCarrito,
'id carrito',
true
);
const idTipoCarrito = body.idTipoCarrito
? validar.validarNumeroEntero(body.idTipoCarrito, 'id tipo carrito', true)
: null;
let update = {};
return Carrito.findOne({ where: { idCarrito } })
return TipoCarrito.findOne({ where: { idTipoCarrito } })
.then((res) => {
if (idTipoCarrito && !res)
throw new Error('No existe este tipo carrito.');
return Carrito.findOne({ where: { idCarrito } });
})
.then((res) => {
if (!res) throw new Error('No existe este carrito.');
// habilitar cambio de modulo u tipo de equipo
if (idTipoCarrito) update.idTipoCarrito = idTipoCarrito;
if (body.activo === 'desactivar') update.activo = false;
else if (body.activo === 'activar') update.activo = true;
else throw new Error('No se envio nada para actualizar.');
if (validar.validarObjetoVacio(update))
throw new Error('No se envio nada para actualizar.');
return Carrito.update(update, { where: { idCarrito } });
})
.then(() => ({ message: 'Se actualizó correctamente el carrito.' }));