carrito update listo
This commit is contained in:
@@ -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.' }));
|
||||
|
||||
Reference in New Issue
Block a user