- 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:
Surya Paolo
2025-10-26 02:48:07 +02:00
parent 610961d22c
commit 8f54cd2791
23 changed files with 82101 additions and 1848 deletions

View File

@@ -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