This commit is contained in:
Paolo Arena
2021-01-18 00:48:17 +01:00
parent 142380e54b
commit 5493953b58
22 changed files with 9749 additions and 231 deletions

View File

@@ -1,3 +1,5 @@
const shared_consts = require('../tools/shared_nodejs');
const express = require('express');
const router = express.Router();
@@ -29,6 +31,7 @@ const paypal = require('paypal-rest-sdk')
const CartClass = require('../modules/Cart')
const Cart = require('../models/cart');
const OrdersCart = require('../models/orderscart');
//GET cart
router.get('/:userId', authenticate, function (req, res, next) {
@@ -166,5 +169,70 @@ router.put('/:userId', authenticate, function (req, res, next) {
})
})
//POST cart
router.post('/:userId/cartstatus', authenticate, async function (req, res, next) {
let idapp = req.body.idapp;
let userId = req.params.userId;
let cart_id = req.body.cart_id;
let status = req.body.status;
const mycart = await Cart.getCartByUserId(userId, idapp);
try {
if (!!mycart) {
if (status === shared_consts.OrderStatus.CHECKOUT_CONFIRMED) {
// Porta tutto il Cart nell'Ordine
const newOrderCart = new OrdersCart({
idapp,
items: mycart.items,
totalQty: mycart.totalQty,
totalPrice: mycart.totalPrice,
userId,
status,
note: mycart.note,
numorder: await OrdersCart.getNewNumOrder(userId, idapp),
created_at: new Date(),
modify_at: new Date(),
})
const myorderlist = OrdersCart.updateOrdersCartById(-1, newOrderCart, function (err, ris) {
//if (err) return next(err)
if (err)
return res.send({ code: server_constants.RIS_CODE_ERR, status: 0 });
else {
const myris = ris;
// Cancella il Cart appena salvato in OrdersCart
Cart.deleteCartByCartId(mycart.id)
.then((ris) => {
const orders = OrdersCart.getOrdersCartByUserId(userId, idapp)
.then((orders) => {
return res.send({ code: server_constants.RIS_CODE_OK, status: myris.status, orders });
});
})
}
})
// mycart.numorder = await Cart.getNewNumOrder(userId, idapp);
// mycart.status = shared_consts.OrderStatus.CHECKOUT_CONFIRMED
/* const status = await Cart.findOneAndUpdate(
{ userId },
{
$set: {
status: mycart.status, numorder: mycart.numorder
}
},
{ new: false })
.then((rec) => {
return rec.status
}) */
}
}
} catch (e) {
return res.send({ code: server_constants.RIS_CODE_ERR, status: 0 });
}
});
module.exports = router;