catalogo, avanti, grafica
This commit is contained in:
@@ -310,7 +310,7 @@ router.post('/import', authenticate, async (req, res) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const cancella_categorie = true;
|
const cancella_categorie = false;
|
||||||
|
|
||||||
if (cancella_categorie) {
|
if (cancella_categorie) {
|
||||||
await CatProd.deleteMany({ idapp });
|
await CatProd.deleteMany({ idapp });
|
||||||
@@ -579,8 +579,17 @@ router.post('/import', authenticate, async (req, res) => {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// cerca l'indice della versione in arrvariazioni
|
||||||
|
let ind = arrvariazioni.findIndex(x => x.versione === versione);
|
||||||
|
let nuovaVariazione = ind < 0;
|
||||||
|
|
||||||
//
|
//
|
||||||
let variazione = {};
|
let variazione = {};
|
||||||
|
if (!nuovaVariazione) {
|
||||||
|
// Mantieni intatte questi campi del RECORD su DB:
|
||||||
|
variazione.quantita = arrvariazioni[ind].quantita;
|
||||||
|
}
|
||||||
|
|
||||||
variazione.active = true; // ++ ??
|
variazione.active = true; // ++ ??
|
||||||
variazione.versione = versione;
|
variazione.versione = versione;
|
||||||
variazione.status = product.Stato ? product.Stato : null;
|
variazione.status = product.Stato ? product.Stato : null;
|
||||||
@@ -591,7 +600,9 @@ router.post('/import', authenticate, async (req, res) => {
|
|||||||
variazione.edizione = product.Edizione ? product.Edizione : '';
|
variazione.edizione = product.Edizione ? product.Edizione : '';
|
||||||
variazione.eta = product.eta ? product.eta : '';
|
variazione.eta = product.eta ? product.eta : '';
|
||||||
variazione.addtocart_link = product.addtocart_link ? product.addtocart_link : '';
|
variazione.addtocart_link = product.addtocart_link ? product.addtocart_link : '';
|
||||||
if (!options.aggiornaStockQty && esisteindb && !isnuovo) {
|
|
||||||
|
|
||||||
|
if (!options.aggiornaStockQty && !nuovaVariazione) {
|
||||||
// non aggiornare la Quantita in magazzino
|
// non aggiornare la Quantita in magazzino
|
||||||
} else if (product.Quantita) {
|
} else if (product.Quantita) {
|
||||||
variazione.quantita = parseInt(product.Quantita);
|
variazione.quantita = parseInt(product.Quantita);
|
||||||
@@ -600,13 +611,14 @@ router.post('/import', authenticate, async (req, res) => {
|
|||||||
|
|
||||||
// -----------------------------
|
// -----------------------------
|
||||||
|
|
||||||
// cerca l'indice della versione in arrvariazioni
|
|
||||||
let ind = arrvariazioni.findIndex(x => x.versione === versione);
|
|
||||||
if (ind >= 0)
|
if (ind >= 0)
|
||||||
arrvariazioni[ind] = variazione; // aggiorna il record "ind" in arrvariazioni
|
arrvariazioni[ind] = variazione; // aggiorna il record "ind" in arrvariazioni
|
||||||
else
|
else
|
||||||
arrvariazioni.push(variazione); // aggiunge un nuovo record in arrvariazioni
|
arrvariazioni.push(variazione); // aggiunge un nuovo record in arrvariazioni
|
||||||
|
|
||||||
|
// Effettua l'ordinamento seguendo la "versione"
|
||||||
|
arrvariazioni.sort((a, b) => a.versione - b.versione);
|
||||||
|
|
||||||
// Inserisce o aggiorna il record variazione nell'array delle variazioni, in base a "versione"
|
// Inserisce o aggiorna il record variazione nell'array delle variazioni, in base a "versione"
|
||||||
if (isnuovo) {
|
if (isnuovo) {
|
||||||
myproduct.arrvariazioni = arrvariazioni;
|
myproduct.arrvariazioni = arrvariazioni;
|
||||||
@@ -635,7 +647,52 @@ router.post('/import', authenticate, async (req, res) => {
|
|||||||
updated++;
|
updated++;
|
||||||
let modif = '';
|
let modif = '';
|
||||||
for (const field of arrfieldchange) {
|
for (const field of arrfieldchange) {
|
||||||
modif += field + ': ' + recold[field] + ' -> ' + recnew[field] + ' | ';
|
if (field === 'arrvariazioni') {
|
||||||
|
modif += field + ': '
|
||||||
|
|
||||||
|
// Controlla quali campi sono variati tra recold.arrvariazioni e recnew.arrvariazioni
|
||||||
|
for (const variazione of recnew.arrvariazioni) {
|
||||||
|
// trova la versione in recold.arrvariazioni
|
||||||
|
let ind = recold.arrvariazioni.findIndex(x => x.versione === variazione.versione);
|
||||||
|
|
||||||
|
if (ind < 0) {
|
||||||
|
modif += 'Nuova Variazione [' + variazione.versione + '] ' + variazione.status + ' | Price: ' + variazione.price + ' -> Sale_Price: ' + variazione.sale_price + ' | ';
|
||||||
|
} else {
|
||||||
|
let oldvariazione = recold.arrvariazioni[ind];
|
||||||
|
if (oldvariazione.status !== variazione.status) {
|
||||||
|
modif += 'Variazione [' + oldvariazione.versione + '] ' + variazione.status + ' -> ' + variazione.status;
|
||||||
|
}
|
||||||
|
if (oldvariazione.price !== variazione.price) {
|
||||||
|
modif += ' | Price: ' + oldvariazione.price + ' -> ' + variazione.price;
|
||||||
|
}
|
||||||
|
if (oldvariazione.sale_price !== variazione.sale_price) {
|
||||||
|
modif += ' | Sale Price: ' + oldvariazione.sale_price + ' -> ' + variazione.sale_price;
|
||||||
|
}
|
||||||
|
if (oldvariazione.formato !== variazione.formato) {
|
||||||
|
modif += ' | Formato: ' + oldvariazione.formato + ' -> ' + variazione.formato;
|
||||||
|
}
|
||||||
|
if (oldvariazione.tipologia !== variazione.tipologia) {
|
||||||
|
modif += ' | Tipologia: ' + oldvariazione.tipologia + ' -> ' + variazione.tipologia;
|
||||||
|
}
|
||||||
|
if (oldvariazione.edizione !== variazione.edizione) {
|
||||||
|
modif += ' | Edizione: ' + oldvariazione.edizione + ' -> ' + variazione.edizione;
|
||||||
|
}
|
||||||
|
if (oldvariazione.eta !== variazione.eta) {
|
||||||
|
modif += ' | Età: ' + oldvariazione.eta + ' -> ' + variazione.eta;
|
||||||
|
}
|
||||||
|
if (oldvariazione.preOrderDate !== variazione.preOrderDate) {
|
||||||
|
modif += ' | PreOrderDate: ' + oldvariazione.preOrderDate + ' -> ' + variazione.preOrderDate;
|
||||||
|
}
|
||||||
|
if (oldvariazione.addtocart_link !== variazione.addtocart_link) {
|
||||||
|
modif += ' | AddToCart: ' + oldvariazione.addtocart_link + ' -> ' + variazione.addtocart_link;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
} else {
|
||||||
|
modif += field + ': ' + recold[field] + ' -> ' + recnew[field] + ' | ';
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log('Changed: [' + indprod + '/' + dataObjects.length + ']', productInfo.name, '[' + myproduct.idProductInfo + '] : ' + modif);
|
console.log('Changed: [' + indprod + '/' + dataObjects.length + ']', productInfo.name, '[' + myproduct.idProductInfo + '] : ' + modif);
|
||||||
|
|||||||
Reference in New Issue
Block a user