- Altri aggiornamenti della scheda
This commit is contained in:
@@ -145,14 +145,43 @@ export const useProducts = defineStore('Products', {
|
||||
return product?.arrvariazioni?.[0]?.quantita > 0 && product.arrvariazioni?.[0]?.quantita < 50
|
||||
},
|
||||
isEsaurito: (state: IProductsState) => (product: IProduct): boolean => {
|
||||
return product?.arrvariazioni?.[0]?.quantita <= 0
|
||||
return product?.arrvariazioni?.[0]?.quantita <= 0 && !state.isProssimaUscitaById(product.productInfo.idStatoProdotto) && !state.isPrevenditaById(product.productInfo.idStatoProdotto)
|
||||
},
|
||||
|
||||
isPubblicatoById: (state: IProductsState) => (idStatoProdotto: number): boolean => {
|
||||
/*
|
||||
1 In commercio
|
||||
3 Ristampa
|
||||
4 Prossima uscita/pubblicazione
|
||||
6 In promozione
|
||||
7 In fase di valutazione
|
||||
8 Titolo in esaurimento (in attesa Nuova Edizione)
|
||||
9 Titolo in esaurimento
|
||||
20 Titolo in esaurimento (in att N.E Ricopertinata)
|
||||
26 Titolo in Esaurimento (disponibile N.E.)
|
||||
33 In commercio (digitale)
|
||||
34 In prevendita
|
||||
45 Vendita sito
|
||||
46 2023 in commercio
|
||||
47 Assoluto NO Reso
|
||||
48 Titolo esaurito
|
||||
|
||||
*/
|
||||
|
||||
switch (idStatoProdotto) {
|
||||
case 1: // In Commercio
|
||||
case 45: // In Commercio
|
||||
case 3: // Ristampa
|
||||
case 4: // Prossima uscita/pubblicazione
|
||||
case 6: // In promozione
|
||||
case 7: // In fase di valutazione
|
||||
case 8: // 8 Titolo in esaurimento (in attesa Nuova Edizione)
|
||||
case 9: // In Commercio
|
||||
case 33: // In commercio (digitale)
|
||||
case 34: // In prevendita
|
||||
case 45: // Vendita sito
|
||||
case 46: // 2023 in commercio
|
||||
case 47: // Assoluto NO Reso
|
||||
case 48: // Titolo esaurito
|
||||
case undefined:
|
||||
return true;
|
||||
default:
|
||||
@@ -161,9 +190,13 @@ export const useProducts = defineStore('Products', {
|
||||
},
|
||||
|
||||
isProssimaUscitaById: (state: IProductsState) => (idStatoProdotto: number): boolean => {
|
||||
// 4 - Prossima uscita
|
||||
return (idStatoProdotto === 4)
|
||||
},
|
||||
isPrevenditaById: (state: IProductsState) => (idStatoProdotto: number): boolean => {
|
||||
// 4 - Prossima uscita
|
||||
// 34 - In Prevendita
|
||||
return (idStatoProdotto === 4) || (idStatoProdotto === 34)
|
||||
return (idStatoProdotto === 34)
|
||||
},
|
||||
|
||||
isPubblicato: (state: IProductsState) => (productInfo: IProductInfo): boolean => {
|
||||
@@ -178,6 +211,10 @@ export const useProducts = defineStore('Products', {
|
||||
return state.isProssimaUscitaById(productInfo.idStatoProdotto)
|
||||
},
|
||||
|
||||
isPrevendita: (state: IProductsState) => (productInfo: IProductInfo): boolean => {
|
||||
return state.isPrevenditaById(productInfo.idStatoProdotto)
|
||||
},
|
||||
|
||||
getDescrStatiProdottoByIdStatoProdotto: (state: IProductsState) => (idStatoProdotto: number): string => {
|
||||
const ctrec = state.stati_prodotto.find((mystatus: T_Web_StatiProdotto) => mystatus.IdStatoProdotto === idStatoProdotto)
|
||||
return (ctrec) ? ctrec.Descrizione : ''
|
||||
@@ -1520,7 +1557,7 @@ export const useProducts = defineStore('Products', {
|
||||
// Additional replacements based on the content
|
||||
const keysToCheck = [
|
||||
'{titolo}', '{sottotitolo}', '{categoria}', '{sottocategoria}', '{descr_categoria}',
|
||||
'{pagine}', '{isbn}', '{misure}', '{argomento}', '{date_pub}', '{ranking_globale}',
|
||||
'{pagine}', '{isbn}', '{misure}', '{edizione', '{ristampa}', '{argomento}', '{date_pub}', '{date_updated_fromGM}', '{ranking_globale}',
|
||||
'{venduti}', '{formato}', '{tipologia}', '{stato}', '{scale}', '{descr_trafiletto_catalogo}',
|
||||
'{link_macro}', '{qta}', '{image_link}', '{imagefile}', '{debug}'
|
||||
];
|
||||
@@ -1549,12 +1586,21 @@ export const useProducts = defineStore('Products', {
|
||||
case '{misure}':
|
||||
replacements[key] = myproduct.arrvariazioni![0].misure || '';
|
||||
break;
|
||||
case '{edizione}':
|
||||
replacements[key] = myproduct.arrvariazioni![0].edizione || '';
|
||||
break;
|
||||
case '{ristampa}':
|
||||
replacements[key] = myproduct.arrvariazioni![0].ristampa || '';
|
||||
break;
|
||||
case '{argomento}':
|
||||
replacements[key] = this.getCatProdsStrByCatProds(myproduct.productInfo.catprods!) || '';
|
||||
break;
|
||||
case '{date_pub}':
|
||||
replacements[key] = tools.getstrDateShort(myproduct.productInfo.date_pub) || '';
|
||||
break;
|
||||
case '{date_updated_fromGM}':
|
||||
replacements[key] = tools.getstrDateShort(myproduct.productInfo.date_updated_fromGM) || '';
|
||||
break;
|
||||
case '{ranking_globale}':
|
||||
replacements[key] = myproduct.productInfo.rank3M! || '0';
|
||||
break;
|
||||
@@ -1833,6 +1879,7 @@ export const useProducts = defineStore('Products', {
|
||||
},
|
||||
productTypes: [],
|
||||
excludeproductTypes: [],
|
||||
idTipologie: [],
|
||||
editore: [],
|
||||
argomenti: [],
|
||||
author: '',
|
||||
|
||||
Reference in New Issue
Block a user