103 lines
2.7 KiB
JavaScript
Executable File
103 lines
2.7 KiB
JavaScript
Executable File
const express = require('express');
|
|
const router = express.Router();
|
|
|
|
const tools = require('../tools/general');
|
|
|
|
var server_constants = require('../tools/server_constants');
|
|
|
|
var { Project } = require('../models/project');
|
|
|
|
const { User } = require('../models/user');
|
|
|
|
var { authenticate, auth_default } = require('../middleware/authenticate');
|
|
|
|
const _ = require('lodash');
|
|
|
|
const Product = require('../models/product');
|
|
const OrdersCart = require('../models/orderscart');
|
|
const Variant = require('../models/variant');
|
|
|
|
/*const Department = require('../models/Department')
|
|
const Category = require('../models/Category')
|
|
const TypedError = require('../modules/ErrorHandler')
|
|
const paypal_config = require('../configs/paypal-config')
|
|
const paypal = require('paypal-rest-sdk')
|
|
*/
|
|
|
|
const CartClass = require('../modules/Cart')
|
|
const Cart = require('../models/cart');
|
|
|
|
//GET /products
|
|
router.post('/', auth_default, async function (req, res, next) {
|
|
const idapp = req.body.idapp;
|
|
const userId = req.body.userId;
|
|
|
|
let ismanager = await tools.isManagerByReq(req);
|
|
|
|
let products = await Product.findAllIdApp(idapp, "", undefined, ismanager);
|
|
let orders = null;
|
|
if (ismanager) {
|
|
// Prende Tutti gli Ordini !
|
|
orders = await OrdersCart.getOrdersCartByUserId('ALL', idapp, 0, false);
|
|
} else {
|
|
orders = await OrdersCart.getOrdersCartByUserId(userId, idapp, 0, false);
|
|
}
|
|
|
|
/*
|
|
let ind = 0;
|
|
for (const ord of orders) {
|
|
let newitems = []
|
|
for (myord of ord.items) {
|
|
if (!myord.order) {
|
|
console.log('NO ORDINE ', myord, 'Ind=', ind);
|
|
} else {
|
|
if (myord.order && !myord.order.hasOwnProperty('idGasordine')) {
|
|
console.log('NO idGasordine', myord);
|
|
} else {
|
|
newitems.push(myord)
|
|
}
|
|
}
|
|
}
|
|
ind++;
|
|
|
|
ord.items = newitems
|
|
}
|
|
*/
|
|
|
|
if (products)
|
|
return res.send({ code: server_constants.RIS_CODE_OK, products, orders });
|
|
else
|
|
return res.status(400).send({ code: server_constants.RIS_CODE_OK, products, orders });
|
|
|
|
});
|
|
|
|
router.post('/:code', auth_default, async function (req, res, next) {
|
|
const idapp = req.body.idapp;
|
|
const code = req.body.code;
|
|
|
|
var product = await Product.findAllIdApp(idapp, code);
|
|
|
|
if (product.length > 0) {
|
|
return res.send({ code: server_constants.RIS_CODE_OK, product: product[0] });
|
|
}
|
|
|
|
});
|
|
|
|
router.get('/id/:id', async function (req, res) {
|
|
|
|
const id = req.params.id;
|
|
|
|
var product = await Product.getProductById(id);
|
|
|
|
// console.log('Product ID', id, product);
|
|
|
|
if (product) {
|
|
return res.send({ code: server_constants.RIS_CODE_OK, product: product });
|
|
} else {
|
|
return res.send({ code: server_constants.RIS_CODE_OK, product: null });
|
|
}
|
|
|
|
});
|
|
|
|
module.exports = router;
|