- Altri aggiornamenti della scheda
This commit is contained in:
@@ -519,6 +519,20 @@ export const costanti = {
|
||||
CATALOGHI: {
|
||||
PAG_INTRO_DEFAULT: 'introduttiva_default.png',
|
||||
PAG_SFONDO_DEFAULT: 'sfondo_default.png',
|
||||
},
|
||||
|
||||
DISP: {
|
||||
TUTTI: '0',
|
||||
DISPONIBILI: '1',
|
||||
ESAURITI: '2',
|
||||
},
|
||||
|
||||
STATO: {
|
||||
TUTTI: '0',
|
||||
IN_COMMERCIO: '1',
|
||||
SOLO_PROSSIMA_USCITA: '2',
|
||||
PREVENDITA: '3',
|
||||
NON_VENDIBILE: '4',
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -310,6 +310,7 @@ export const colmyScheda = [
|
||||
|
||||
AddCol({ name: 'productTypes', label_trans: 'productTypes', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'excludeproductTypes', label_trans: 'excludeproductTypes', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'idTipologie', label_trans: 'idTipologie', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'editore', label_trans: 'editore' }),
|
||||
AddCol({ name: 'author', label_trans: 'scheda.author' }),
|
||||
AddCol({ name: 'argomenti', label_trans: 'scheda.argomenti' }),
|
||||
@@ -327,6 +328,7 @@ export const colmyScheda = [
|
||||
export const colmyelCatalogo = [
|
||||
AddCol({ name: 'productTypes', label_trans: 'productTypes', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'excludeproductTypes', label_trans: 'excludeproductTypes', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'idTipologie', label_trans: 'idTipologie', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'pdf', label_trans: 'pdf' }),
|
||||
AddCol({ name: 'pdf_filename', label_trans: 'pdf_filename' }),
|
||||
AddCol({ name: 'editore', label_trans: 'editore' }),
|
||||
@@ -659,7 +661,7 @@ export const colTableTipoFormato = [
|
||||
AddCol(DuplicateRec),
|
||||
]
|
||||
export const colTableTipologie = [
|
||||
AddCol({ name: 'IdStatoProdotto', label_trans: 'statoprod.IdStatoProdotto' }),
|
||||
AddCol({ name: 'IdTipologia', label_trans: 'statoprod.IdTipologia' }),
|
||||
AddCol({ name: 'Descrizione', label_trans: 'statoprod.Descrizione' }),
|
||||
AddCol(DeleteRec),
|
||||
AddCol(DuplicateRec),
|
||||
@@ -2531,6 +2533,8 @@ export const colTableVariazioni = [
|
||||
AddCol({ name: 'availability', label_trans: 'catalogo.availability', fieldtype: costanti.FieldType.number }),
|
||||
AddCol({ name: 'formato', label_trans: 'catalogo.formato', fieldtype: costanti.FieldType.string }),
|
||||
AddCol({ name: 'misure', label_trans: 'catalogo.misure', fieldtype: costanti.FieldType.string }),
|
||||
AddCol({ name: 'ristampa', label_trans: 'catalogo.ristampa', fieldtype: costanti.FieldType.string }),
|
||||
AddCol({ name: 'edizione', label_trans: 'catalogo.edizione', fieldtype: costanti.FieldType.string }),
|
||||
AddCol({ name: 'tipologia', label_trans: 'catalogo.tipologia', fieldtype: costanti.FieldType.string }),
|
||||
AddCol({ name: 'edizione', label_trans: 'catalogo.edizione', fieldtype: costanti.FieldType.string }),
|
||||
AddCol({ name: 'preOrderDate', label_trans: 'catalogo.preOrderDate', fieldtype: costanti.FieldType.date }),
|
||||
@@ -4408,7 +4412,7 @@ export const fieldsTable = {
|
||||
value: 't_web_tipologies',
|
||||
label: 'Tipologie',
|
||||
columns: colTableTipologie,
|
||||
colkey: 'IdStatoProdotto',
|
||||
colkey: 'IdTipologia',
|
||||
collabel: 'Descrizione',
|
||||
},
|
||||
{
|
||||
|
||||
@@ -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: '',
|
||||
|
||||
@@ -2444,6 +2444,7 @@ export const useGlobalStore = defineStore('GlobalStore', {
|
||||
return {
|
||||
productTypes: [0],
|
||||
excludeproductTypes: [],
|
||||
idTipologie: [],
|
||||
formato: [],
|
||||
Categoria: [],
|
||||
editore: [],
|
||||
|
||||
Reference in New Issue
Block a user