- corretto problema ROGNOSO : Risolvere la questione "Sessioni multiple", se apro 2 browser l'ultimo va a cancellare il precedente, e mi da errore di email non valida !
Il problema era sulla fetch nel service worker, gestita in quel modo personalizzato, andava in conflitto, non tenendo le chiamate bloccanti, ma uscivano prima che arrivasse la risposta del server. - Per chi è da tanto che non si collega a RISO, compare "Email non verificata"... (si risolve chiudendo su ESCI e riloggandosi)... però andrebbe sistemata. (stesso problema di prima).
This commit is contained in:
@@ -253,11 +253,15 @@ CatalogSchema.statics.getCatalogById = async function (id) {
|
||||
model: 'Gasordine',
|
||||
},
|
||||
});
|
||||
|
||||
|
||||
// controlla prima se nella lista ci sono dei product che non esistono piu allora li devi rimuovere !
|
||||
for (const catalog of arrrec) {
|
||||
let old_lista = [...catalog.lista_prodotti];
|
||||
|
||||
let nuova_lista = [...catalog.lista_prodotti];
|
||||
|
||||
const originalLength = catalog.lista_prodotti.length;
|
||||
catalog.lista_prodotti = catalog.lista_prodotti.filter(
|
||||
nuova_lista = nuova_lista.filter(
|
||||
(product) =>
|
||||
product.productInfo &&
|
||||
product.productInfo.code &&
|
||||
@@ -266,11 +270,21 @@ CatalogSchema.statics.getCatalogById = async function (id) {
|
||||
product.productInfo.imagefile !== 'noimg.jpg' &&
|
||||
!product.delete
|
||||
);
|
||||
if (catalog.lista_prodotti.length !== originalLength) {
|
||||
await catalog.save();
|
||||
|
||||
// Se la nuova lista è diversa da quella precedente di più del 10%, allora non aggiorna, perché potrebbe esserci un problema
|
||||
let differencePercentage = (100 * Math.abs(originalLength - nuova_lista.length)) / originalLength;
|
||||
if (differencePercentage < 10) {
|
||||
// Aggiorno la lista solo se è cambiata poco
|
||||
// confronta l'array nuova_lista con l'array catalog.lista_prodotti
|
||||
let differents = tools.areDifferentProduct(catalog.lista_prodotti, nuova_lista);
|
||||
|
||||
if (differents) {
|
||||
// aggiorna la lista
|
||||
catalog.lista_prodotti = nuova_lista;
|
||||
await catalog.save();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
const transformedArrRec = arrrec.map((catalog) => ({
|
||||
...catalog.toObject(), // Converte il documento Mongoose in un oggetto JavaScript puro
|
||||
|
||||
Reference in New Issue
Block a user