- ho migliorato la grafica della generazione del PDF e PDF Stampa.
This commit is contained in:
@@ -14,6 +14,7 @@ import { shared_consts } from '@src/common/shared_vuejs';
|
||||
import { CProductCard } from '@src/components/CProductCard';
|
||||
|
||||
import { CMyDialog } from '@src/components/CMyDialog';
|
||||
import { CTitleBanner } from '@src/components/CTitleBanner';
|
||||
import { CMySelect } from '@src/components/CMySelect';
|
||||
import { CMyValueDb } from '@src/components/CMyValueDb';
|
||||
import { CProductTable } from '@src/components/CProductTable';
|
||||
@@ -57,6 +58,7 @@ export default defineComponent({
|
||||
CSearchProduct,
|
||||
CMyDialog,
|
||||
CMyValueDb,
|
||||
CTitleBanner,
|
||||
},
|
||||
emits: ['update:modelValue', 'updateCatalogo'],
|
||||
props: {
|
||||
@@ -90,7 +92,33 @@ export default defineComponent({
|
||||
const heightpdf = ref('12.31');
|
||||
const compressionepdf = ref('prepress');
|
||||
|
||||
const ismounting = ref(false)
|
||||
const ismounting = ref(false);
|
||||
|
||||
const pdfColumns = [
|
||||
{ name: 'name', label: 'Nome', field: 'name', align: 'left' },
|
||||
{ name: 'pdf', label: 'PDF', field: 'pdf', align: 'left' },
|
||||
{ name: 'data', label: 'Data', field: 'data', align: 'left' },
|
||||
{ name: 'azioni', label: 'Azioni', field: 'azioni', align: 'center' },
|
||||
];
|
||||
|
||||
const pdfRows = computed(() => [
|
||||
{
|
||||
name: 'PDF Generato',
|
||||
pdf: getCatalogoByMyPage.value.pdf_generato,
|
||||
data: getCatalogoByMyPage.value.data_generato,
|
||||
showButton: getCatalogoByMyPage.value.data_generato !== getCatalogoByMyPage.value.data_online,
|
||||
buttonLabel: 'Pubblica PDF OnLine',
|
||||
action: pubblicaPDF,
|
||||
},
|
||||
{
|
||||
name: 'PDF Generato Stampa',
|
||||
pdf: getCatalogoByMyPage.value.pdf_generato_stampa,
|
||||
data: getCatalogoByMyPage.value.data_generato_stampa,
|
||||
showButton: getCatalogoByMyPage.value.data_generato_stampa !== getCatalogoByMyPage.value.data_online_stampa,
|
||||
buttonLabel: 'Pubblica PDF Stampa',
|
||||
action: pubblicaPDFStampa,
|
||||
},
|
||||
]);
|
||||
|
||||
const optDisp = ref([
|
||||
{ label: 'Tutti', value: costanti.DISP.TUTTI },
|
||||
@@ -585,14 +613,20 @@ export default defineComponent({
|
||||
if (optcatalogo.value) {
|
||||
// LINK PAGINA
|
||||
if (optcatalogo.value.dimensioni_def.linkIdTemplate) {
|
||||
const reccatalog = globalStore.sovrascriviPaginaDefaultFromTemplate(optcatalogo.value.dimensioni_def.linkIdTemplate, optcatalogo.value.dimensioni_def);
|
||||
const reccatalog = globalStore.sovrascriviPaginaDefaultFromTemplate(
|
||||
optcatalogo.value.dimensioni_def.linkIdTemplate,
|
||||
optcatalogo.value.dimensioni_def
|
||||
);
|
||||
if (reccatalog) {
|
||||
optcatalogo.value.dimensioni_def.pagina = { ...reccatalog.dimensioni_def.pagina};
|
||||
optcatalogo.value.dimensioni_def.pagina = { ...reccatalog.dimensioni_def.pagina };
|
||||
}
|
||||
}
|
||||
|
||||
if (optcatalogo.value.print_linkIdTemplate) {
|
||||
const reccat2 = globalStore.sovrascriviAreadistampaFromTemplate(optcatalogo.value.print_linkIdTemplate, optcatalogo.value);
|
||||
const reccat2 = globalStore.sovrascriviAreadistampaFromTemplate(
|
||||
optcatalogo.value.print_linkIdTemplate,
|
||||
optcatalogo.value
|
||||
);
|
||||
if (reccat2) {
|
||||
const optcatalogo2 = { ...optcatalogo.value };
|
||||
// optcatalogo2.areadistampa = { ...reccat2.areadistampa};
|
||||
@@ -847,7 +881,6 @@ export default defineComponent({
|
||||
await productStore.loadProducts(true);
|
||||
}
|
||||
|
||||
|
||||
if (!loadpage.value) return;
|
||||
|
||||
generatinglist.value = true;
|
||||
@@ -1333,7 +1366,7 @@ export default defineComponent({
|
||||
async function mounted() {
|
||||
// console.log('mounted Catalogo')
|
||||
|
||||
ismounting.value = true
|
||||
ismounting.value = true;
|
||||
generatinglist.value = true;
|
||||
|
||||
if (optcatalogo.value.showListaArgomenti) cat.value = tools.getCookie(getKeyCatAtLoad(), '');
|
||||
@@ -1400,7 +1433,7 @@ export default defineComponent({
|
||||
|
||||
calcArrProducts();
|
||||
|
||||
ismounting.value = false
|
||||
ismounting.value = false;
|
||||
}
|
||||
|
||||
function loaddata() {
|
||||
@@ -1752,13 +1785,14 @@ export default defineComponent({
|
||||
|
||||
if (element) {
|
||||
// add this record to lista_prodotti
|
||||
if (getCatalogoByMyPage.value && !getCatalogoByMyPage.value.lista_prodotti?.some((p) => p._id === element._id)) {
|
||||
if (
|
||||
getCatalogoByMyPage.value &&
|
||||
!getCatalogoByMyPage.value.lista_prodotti?.some((p) => p._id === element._id)
|
||||
) {
|
||||
// inserire il record in cima
|
||||
const arr = getCatalogoByMyPage.value.lista_prodotti || [];
|
||||
if (where === shared_consts.WHERE_INSERT.ONTOP)
|
||||
arr.unshift(element);
|
||||
else if (where === shared_consts.WHERE_INSERT.ONBOTTOM)
|
||||
arr.push(element)
|
||||
if (where === shared_consts.WHERE_INSERT.ONTOP) arr.unshift(element);
|
||||
else if (where === shared_consts.WHERE_INSERT.ONBOTTOM) arr.push(element);
|
||||
|
||||
updateProducts(arr);
|
||||
|
||||
@@ -1989,51 +2023,81 @@ export default defineComponent({
|
||||
const pubblicaPDF = async () => {
|
||||
const catalog = getCatalogoByMyPage.value;
|
||||
|
||||
const ris = await globalStore.execOnlinePDF({ id_catalog: catalog._id, stampa: false });
|
||||
const confirm = await $q
|
||||
.dialog({
|
||||
title: 'Conferma',
|
||||
message: 'Vuoi pubblicare OnLine questo PDF?',
|
||||
ok: {
|
||||
label: 'S ',
|
||||
push: true,
|
||||
},
|
||||
cancel: {
|
||||
label: 'Annulla',
|
||||
},
|
||||
})
|
||||
.onOk(async () => {
|
||||
if (!confirm) return;
|
||||
|
||||
if (ris) {
|
||||
if (ris.record?.pdf_online) {
|
||||
catalog.pdf_online = ris.record.pdf_online;
|
||||
catalog.data_online = ris.record.data_online;
|
||||
}
|
||||
$q.notify({
|
||||
color: 'positive',
|
||||
message: 'PDF inviato ONLINE!',
|
||||
icon: 'check',
|
||||
const ris = await globalStore.execOnlinePDF({ id_catalog: catalog._id, stampa: false });
|
||||
|
||||
if (ris) {
|
||||
if (ris.record?.pdf_online) {
|
||||
catalog.pdf_online = ris.record.pdf_online;
|
||||
catalog.data_online = ris.record.data_online;
|
||||
}
|
||||
$q.notify({
|
||||
color: 'positive',
|
||||
message: 'PDF inviato ONLINE!',
|
||||
icon: 'check',
|
||||
});
|
||||
} else {
|
||||
$q.loading.hide();
|
||||
$q.notify({
|
||||
color: 'negative',
|
||||
message: "Errore nell'invio del PDF OnLine",
|
||||
icon: 'error',
|
||||
});
|
||||
}
|
||||
});
|
||||
} else {
|
||||
$q.loading.hide();
|
||||
$q.notify({
|
||||
color: 'negative',
|
||||
message: "Errore nell'invio del PDF OnLine",
|
||||
icon: 'error',
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
const pubblicaPDFStampa = async () => {
|
||||
const catalog = getCatalogoByMyPage.value;
|
||||
|
||||
const ris = await globalStore.execOnlinePDF({ id_catalog: catalog._id, stampa: true });
|
||||
const confirm = await $q
|
||||
.dialog({
|
||||
title: 'Conferma',
|
||||
message: 'Vuoi pubblicare OnLine questo PDF di STAMPA ?',
|
||||
ok: {
|
||||
label: 'S ',
|
||||
push: true,
|
||||
},
|
||||
cancel: {
|
||||
label: 'Annulla',
|
||||
},
|
||||
})
|
||||
.onOk(async () => {
|
||||
const ris = await globalStore.execOnlinePDF({ id_catalog: catalog._id, stampa: true });
|
||||
|
||||
if (ris) {
|
||||
if (ris.record.pdf_online_stampa) {
|
||||
catalog.pdf_online_stampa = ris.record.pdf_online_stampa;
|
||||
catalog.data_online_stampa = ris.record.data_online_stampa;
|
||||
}
|
||||
$q.notify({
|
||||
color: 'positive',
|
||||
message: 'PDF STAMPA inviato ONLINE!',
|
||||
icon: 'check',
|
||||
if (ris) {
|
||||
if (ris.record.pdf_online_stampa) {
|
||||
catalog.pdf_online_stampa = ris.record.pdf_online_stampa;
|
||||
catalog.data_online_stampa = ris.record.data_online_stampa;
|
||||
}
|
||||
$q.notify({
|
||||
color: 'positive',
|
||||
message: 'PDF STAMPA inviato ONLINE!',
|
||||
icon: 'check',
|
||||
});
|
||||
} else {
|
||||
$q.loading.hide();
|
||||
$q.notify({
|
||||
color: 'negative',
|
||||
message: "Errore nell'invio del PDF STAMPA OnLine",
|
||||
icon: 'error',
|
||||
});
|
||||
}
|
||||
});
|
||||
} else {
|
||||
$q.loading.hide();
|
||||
$q.notify({
|
||||
color: 'negative',
|
||||
message: "Errore nell'invio del PDF STAMPA OnLine",
|
||||
icon: 'error',
|
||||
});
|
||||
}
|
||||
|
||||
// await saveCatalog();
|
||||
};
|
||||
@@ -2118,6 +2182,8 @@ export default defineComponent({
|
||||
pubblicaPDF,
|
||||
pubblicaPDFStampa,
|
||||
ismounting,
|
||||
pdfColumns,
|
||||
pdfRows,
|
||||
};
|
||||
},
|
||||
});
|
||||
|
||||
@@ -298,21 +298,142 @@
|
||||
>1</q-badge
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
v-if="!tools.isUtente()"
|
||||
name="visu"
|
||||
icon="fas fa-book-reader"
|
||||
label="Catalogo"
|
||||
>
|
||||
</q-tab>
|
||||
<q-tab
|
||||
v-if="!tools.isUtente()"
|
||||
name="genera"
|
||||
icon="fas fa-file-pdf"
|
||||
label="Genera PDF"
|
||||
>
|
||||
</q-tab>
|
||||
</q-tabs>
|
||||
|
||||
<CTitleBanner
|
||||
v-show="tabcatalogo === 'visu'"
|
||||
class="q-pa-xs"
|
||||
title="Genera PDF"
|
||||
bgcolor="bg-blue"
|
||||
clcolor="text-white"
|
||||
mystyle=""
|
||||
myclass="myshad"
|
||||
:canopen="true"
|
||||
:visible="false"
|
||||
>
|
||||
<div v-if="tabcatalogo === 'visu'">
|
||||
<div
|
||||
v-if="!tools.isUtente()"
|
||||
class="row justify-center"
|
||||
>
|
||||
<q-btn
|
||||
v-if="optcatalogo.pdf && !optcatalogo.generazionePDFInCorso"
|
||||
:label="`1) PREPARA PDF`"
|
||||
@click="preparePDF"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
v-if="optcatalogo.generazionePDFInCorso"
|
||||
:label="`Termina Generazione`"
|
||||
@click="terminaPDF"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
v-if="optcatalogo.pdf && optcatalogo.generazionePDFInCorso"
|
||||
:label="`2) Genera PDF ` + getPdfFilename()"
|
||||
@click="generatePDF()"
|
||||
color="positive"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
v-if="tools.isAdmin() && false"
|
||||
label="Debug"
|
||||
@click="toggleDebug()"
|
||||
:push="optcatalogo.indebug"
|
||||
:color="optcatalogo.indebug ? `positive` : 'primary'"
|
||||
></q-btn>
|
||||
</div>
|
||||
<div
|
||||
v-if="getCatalogoByMyPage.pdf_generato"
|
||||
class="bg-green-1 q-ma-sm q-pa-sm"
|
||||
>
|
||||
<div class="bg-blue-1 text-red text-bold text-h6 q-ma-sm q-pa-sm">
|
||||
<strong>PDF generati Temporanei</strong>
|
||||
</div>
|
||||
|
||||
<q-table
|
||||
:rows="pdfRows"
|
||||
:columns="pdfColumns"
|
||||
flat
|
||||
bordered
|
||||
dense
|
||||
row-key="name"
|
||||
>
|
||||
<template v-slot:body-cell-pdf="props">
|
||||
<q-td :props="props">
|
||||
<a
|
||||
v-if="props.row.pdf"
|
||||
:href="tools.getHost() + props.row.pdf"
|
||||
target="_blank"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + props.row.pdf }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
</q-td>
|
||||
</template>
|
||||
|
||||
<template v-slot:body-cell-data="props">
|
||||
<q-td :props="props">
|
||||
{{ tools.getstrDateTime(props.row.data) }}
|
||||
</q-td>
|
||||
</template>
|
||||
|
||||
<template v-slot:body-cell-azioni="props">
|
||||
<q-td :props="props">
|
||||
<q-btn
|
||||
v-if="props.row.showButton"
|
||||
rounded
|
||||
color="positive"
|
||||
size="md"
|
||||
:label="props.row.buttonLabel"
|
||||
@click="props.row.action"
|
||||
/>
|
||||
</q-td>
|
||||
</template>
|
||||
</q-table>
|
||||
|
||||
<div class="bg-red-1 q-pa-md q-mt-md">
|
||||
<div class="bg-blue-1 text-green text-bold text-h6 q-ma-sm q-pa-sm">
|
||||
<strong>PDF Pubblicati OnLine</strong>
|
||||
</div>
|
||||
|
||||
<table class="q-table q-table--flat q-table--dense q-ma-none q-pa-none">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td><strong>PDF OnLine:</strong></td>
|
||||
<td>
|
||||
<a
|
||||
v-if="getCatalogoByMyPage.pdf_online"
|
||||
:href="tools.getHost() + getCatalogoByMyPage.pdf_online"
|
||||
target="_blank"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + getCatalogoByMyPage.pdf_online }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
</td>
|
||||
<td>{{ tools.getstrDateTime(getCatalogoByMyPage.data_online) }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><strong>PDF OnLine Stampa:</strong></td>
|
||||
<td>
|
||||
<a
|
||||
v-if="getCatalogoByMyPage.pdf_online_stampa"
|
||||
:href="tools.getHost() + getCatalogoByMyPage.pdf_online_stampa"
|
||||
target="_blank"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + getCatalogoByMyPage.pdf_online_stampa }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
</td>
|
||||
<td>{{ tools.getstrDateTime(getCatalogoByMyPage.data_online_stampa) }}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</CTitleBanner>
|
||||
|
||||
<q-tab-panels
|
||||
v-model="tabvisu"
|
||||
animated
|
||||
@@ -404,119 +525,6 @@
|
||||
/>-->
|
||||
</q-toolbar>
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="genera">
|
||||
<div
|
||||
v-if="!tools.isUtente()"
|
||||
class="row justify-center"
|
||||
>
|
||||
<q-btn
|
||||
v-if="optcatalogo.pdf && !optcatalogo.generazionePDFInCorso"
|
||||
:label="`1) PREPARA PDF`"
|
||||
@click="preparePDF"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
v-if="optcatalogo.generazionePDFInCorso"
|
||||
:label="`Termina Generazione`"
|
||||
@click="terminaPDF"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
v-if="optcatalogo.pdf && optcatalogo.generazionePDFInCorso"
|
||||
:label="`2) Genera PDF ` + getPdfFilename()"
|
||||
@click="generatePDF()"
|
||||
color="positive"
|
||||
></q-btn>
|
||||
<q-btn
|
||||
v-if="tools.isAdmin() && false"
|
||||
label="Debug"
|
||||
@click="toggleDebug()"
|
||||
:push="optcatalogo.indebug"
|
||||
:color="optcatalogo.indebug ? `positive` : 'primary'"
|
||||
></q-btn>
|
||||
</div>
|
||||
<div
|
||||
v-if="getCatalogoByMyPage.pdf_generato"
|
||||
class="bg-green-1 q-ma-sm q-pa-sm"
|
||||
>
|
||||
<div class="bg-blue-1 text-red text-bold text-h6 q-ma-sm q-pa-sm">
|
||||
<strong>PDF generati Temporanei</strong>
|
||||
</div>
|
||||
<div v-if="getCatalogoByMyPage.data_generato !== getCatalogoByMyPage.data_online">
|
||||
PDF Generato:
|
||||
<a
|
||||
:href="tools.getHost() + getCatalogoByMyPage.pdf_generato"
|
||||
target="_blank"
|
||||
v-if="getCatalogoByMyPage.pdf_generato"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + getCatalogoByMyPage.pdf_generato }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
<br />(del {{ tools.getstrDateTime(getCatalogoByMyPage.data_generato) }})
|
||||
<br />
|
||||
<q-btn
|
||||
v-if="getCatalogoByMyPage.data_generato !== getCatalogoByMyPage.data_online"
|
||||
rounded
|
||||
label="Pubblica PDF OnLine"
|
||||
color="positive"
|
||||
@click="pubblicaPDF()"
|
||||
></q-btn>
|
||||
</div>
|
||||
<br />
|
||||
<div v-if="getCatalogoByMyPage.data_generato_stampa !== getCatalogoByMyPage.data_online_stampa">
|
||||
PDF Generato Stampa:
|
||||
<a
|
||||
:href="tools.getHost() + getCatalogoByMyPage.pdf_generato_stampa"
|
||||
target="_blank"
|
||||
v-if="getCatalogoByMyPage.pdf_generato_stampa"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + getCatalogoByMyPage.pdf_generato_stampa }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
<br />(del {{ tools.getstrDateTime(getCatalogoByMyPage.data_generato_stampa) }})
|
||||
<br />
|
||||
<q-btn
|
||||
v-if="getCatalogoByMyPage.data_generato_stampa !== getCatalogoByMyPage.data_online_stampa"
|
||||
rounded
|
||||
label="Pubblica PDF Stampa"
|
||||
color="positive"
|
||||
@click="pubblicaPDFStampa()"
|
||||
></q-btn>
|
||||
</div>
|
||||
<div class="bg-green-1">
|
||||
<div class="bg-blue-1 text-green text-bold text-h6 q-ma-sm q-pa-sm">
|
||||
<strong>PDF Pubblicati OnLine</strong>
|
||||
</div>
|
||||
<div>
|
||||
PDF OnLine:
|
||||
<a
|
||||
:href="tools.getHost() + getCatalogoByMyPage.pdf_online"
|
||||
target="_blank"
|
||||
v-if="getCatalogoByMyPage.pdf_online"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + getCatalogoByMyPage.pdf_online }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
<br />(del {{ tools.getstrDateTime(getCatalogoByMyPage.data_online) }})
|
||||
</div>
|
||||
<br />
|
||||
<div>
|
||||
PDF OnLine Stampa:
|
||||
<a
|
||||
:href="tools.getHost() + getCatalogoByMyPage.pdf_online_stampa"
|
||||
target="_blank"
|
||||
v-if="getCatalogoByMyPage.pdf_online_stampa"
|
||||
class="text-bold"
|
||||
>
|
||||
{{ tools.getHost() + getCatalogoByMyPage.pdf_online_stampa }}
|
||||
</a>
|
||||
<span v-else>-</span>
|
||||
<br />(del {{ tools.getstrDateTime(getCatalogoByMyPage.data_online_stampa) }})
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</q-tab-panel>
|
||||
<q-tab-panel name="ricerca">
|
||||
<div
|
||||
class="col"
|
||||
|
||||
Reference in New Issue
Block a user