This commit is contained in:
Javier Segarra 2024-05-09 19:48:46 +02:00
parent c68ad5be34
commit f51af69fdd
12 changed files with 4 additions and 108 deletions

View File

@ -4,15 +4,12 @@ import { useRouter } from 'vue-router';
import { useStateStore } from 'stores/useStateStore'; import { useStateStore } from 'stores/useStateStore';
import { toDate } from 'filters/index'; import { toDate } from 'filters/index';
import VnPaginate from 'src/components/ui/VnPaginate.vue'; import VnPaginate from 'src/components/ui/VnPaginate.vue';
import VnSearchbar from 'components/ui/VnSearchbar.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
import { getUrl } from 'src/composables/getUrl';
const stateStore = useStateStore(); const stateStore = useStateStore();
const router = useRouter(); const router = useRouter();
@ -64,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -101,7 +97,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -7,7 +7,6 @@ import VnPaginate from 'src/components/ui/VnPaginate.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
@ -62,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>

View File

@ -7,7 +7,6 @@ import VnPaginate from 'src/components/ui/VnPaginate.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
@ -62,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -99,7 +97,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -7,7 +7,6 @@ import VnPaginate from 'src/components/ui/VnPaginate.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
@ -62,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -99,7 +97,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -7,7 +7,6 @@ import VnPaginate from 'src/components/ui/VnPaginate.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
@ -62,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -99,7 +97,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -8,7 +8,6 @@ import VnSearchbar from 'components/ui/VnSearchbar.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
@ -87,7 +86,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -124,7 +122,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -7,7 +7,6 @@ import VnPaginate from 'src/components/ui/VnPaginate.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
@ -62,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -99,7 +97,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -4,15 +4,12 @@ import { useRouter } from 'vue-router';
import { useStateStore } from 'stores/useStateStore'; import { useStateStore } from 'stores/useStateStore';
import { toDate } from 'filters/index'; import { toDate } from 'filters/index';
import VnPaginate from 'src/components/ui/VnPaginate.vue'; import VnPaginate from 'src/components/ui/VnPaginate.vue';
import VnSearchbar from 'components/ui/VnSearchbar.vue';
import AccountFilter from './AccountFilter.vue'; import AccountFilter from './AccountFilter.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import CardList from 'src/components/ui/CardList.vue'; import CardList from 'src/components/ui/CardList.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import AccountSummary from './Card/AccountSummary.vue'; import AccountSummary from './Card/AccountSummary.vue';
import { useSummaryDialog } from 'src/composables/useSummaryDialog'; import { useSummaryDialog } from 'src/composables/useSummaryDialog';
import { getUrl } from 'src/composables/getUrl';
const stateStore = useStateStore(); const stateStore = useStateStore();
const router = useRouter(); const router = useRouter();
@ -64,7 +61,6 @@ function navigate(event, id) {
<template #value> <template #value>
<span class="link" @click.stop> <span class="link" @click.stop>
{{ row.clientName }} {{ row.clientName }}
<CustomerDescriptorProxy :id="row.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -101,7 +97,6 @@ function navigate(event, id) {
outline outline
style="margin-top: 15px" style="margin-top: 15px"
> >
<CustomerDescriptorProxy :id="row.clientFk" />
</QBtn> </QBtn>
<QBtn <QBtn
:label="t('components.smartCard.openSummary')" :label="t('components.smartCard.openSummary')"

View File

@ -4,14 +4,11 @@ import { useRoute } from 'vue-router';
import { useI18n } from 'vue-i18n'; import { useI18n } from 'vue-i18n';
import { toDate, toPercentage } from 'src/filters'; import { toDate, toPercentage } from 'src/filters';
import { useState } from 'src/composables/useState'; import { useState } from 'src/composables/useState';
import TicketDescriptorProxy from 'pages/Ticket/Card/TicketDescriptorProxy.vue';
import AccountDescriptorMenu from 'pages/Account/Card/AccountDescriptorMenu.vue';
import CardDescriptor from 'components/ui/CardDescriptor.vue'; import CardDescriptor from 'components/ui/CardDescriptor.vue';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import useCardDescription from 'src/composables/useCardDescription'; import useCardDescription from 'src/composables/useCardDescription';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import { getUrl } from 'src/composables/getUrl'; import { getUrl } from 'src/composables/getUrl';
import ZoneDescriptorProxy from 'src/pages/Zone/Card/ZoneDescriptorProxy.vue';
const $props = defineProps({ const $props = defineProps({
id: { id: {
@ -104,7 +101,7 @@ onMounted(async () => {
data-key="accountData" data-key="accountData"
> >
<template #menu="{ entity }"> <template #menu="{ entity }">
<AccountDescriptorMenu :account="entity" /> {{ entity }}
</template> </template>
<template #body="{ entity }"> <template #body="{ entity }">
<VnLv v-if="entity.accountState" :label="t('account.card.state')"> <VnLv v-if="entity.accountState" :label="t('account.card.state')">
@ -143,7 +140,6 @@ onMounted(async () => {
<template #value> <template #value>
<span class="link"> <span class="link">
{{ entity.ticket?.zone?.name }} {{ entity.ticket?.zone?.name }}
<ZoneDescriptorProxy :id="entity.ticket?.zone?.id" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -155,8 +151,6 @@ onMounted(async () => {
<template #value> <template #value>
<span class="link"> <span class="link">
{{ entity.ticketFk }} {{ entity.ticketFk }}
<TicketDescriptorProxy :id="entity.ticketFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>

View File

@ -5,8 +5,6 @@ import { useQuasar } from 'quasar';
import { useI18n } from 'vue-i18n'; import { useI18n } from 'vue-i18n';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import { usePrintService } from 'composables/usePrintService'; import { usePrintService } from 'composables/usePrintService';
import SendEmailDialog from 'components/common/SendEmailDialog.vue';
import VnConfirm from 'components/ui/VnConfirm.vue';
const $props = defineProps({ const $props = defineProps({
account: { account: {
@ -15,10 +13,8 @@ const $props = defineProps({
}, },
}); });
const router = useRouter();
const quasar = useQuasar();
const { t } = useI18n(); const { t } = useI18n();
const { openReport, sendEmail } = usePrintService(); const { openReport } = usePrintService();
const account = ref($props.account); const account = ref($props.account);
@ -28,50 +24,6 @@ function openPickupOrder() {
recipientId: account.value.clientFk, recipientId: account.value.clientFk,
}); });
} }
function confirmPickupOrder() {
const customer = account.value.client;
quasar.dialog({
component: SendEmailDialog,
componentProps: {
data: {
address: customer.email,
},
promise: sendPickupOrder,
},
});
}
function sendPickupOrder({ address }) {
const id = account.value.id;
const customer = account.value.client;
return sendEmail(`Accounts/${id}/account-pickup-email`, {
recipientId: customer.id,
recipient: address,
});
}
function confirmRemove() {
quasar
.dialog({
component: VnConfirm,
componentProps: {
title: t('confirmDeletion'),
message: t('confirmDeletionMessage'),
promise: remove,
},
})
.onOk(async () => await router.push({ name: 'AccountList' }));
}
async function remove() {
const id = account.value.id;
await axios.delete(`Accounts/${id}`);
quasar.notify({
message: t('globals.dataDeleted'),
type: 'positive',
});
}
</script> </script>
<template> <template>
<QItem v-ripple clickable> <QItem v-ripple clickable>

View File

@ -10,8 +10,6 @@ import { toDate, toCurrency, toPercentage } from 'filters/index';
import CrudModel from 'components/CrudModel.vue'; import CrudModel from 'components/CrudModel.vue';
import FetchData from 'components/FetchData.vue'; import FetchData from 'components/FetchData.vue';
import VnDiscount from 'components/common/vnDiscount.vue'; import VnDiscount from 'components/common/vnDiscount.vue';
import AccountLinesImport from './AccountLinesImport.vue';
import ItemDescriptorProxy from 'src/pages/Item/Card/ItemDescriptorProxy.vue';
const quasar = useQuasar(); const quasar = useQuasar();
const route = useRoute(); const route = useRoute();
@ -141,17 +139,6 @@ function onUpdateDiscount(response) {
}); });
} }
function showImportDialog() {
quasar
.dialog({
component: AccountLinesImport,
componentProps: {
ticketId: account.value.ticketFk,
},
})
.onOk(() => accountLinesForm.value.reload());
}
async function saveWhenHasChanges() { async function saveWhenHasChanges() {
if (accountLinesForm.value.getChanges().updates) { if (accountLinesForm.value.getChanges().updates) {
await accountLinesForm.value.onSubmit(); await accountLinesForm.value.onSubmit();
@ -221,10 +208,7 @@ async function saveWhenHasChanges() {
</template> </template>
<template #body-cell-description="{ row, value }"> <template #body-cell-description="{ row, value }">
<QTd auto-width align="right" class="text-primary"> <QTd auto-width align="right" class="text-primary">
{{ value }} {{ value }} {{ row }}
<ItemDescriptorProxy
:id="row.sale.itemFk"
></ItemDescriptorProxy>
</QTd> </QTd>
</template> </template>
<template #body-cell-discount="{ row, value, rowIndex }"> <template #body-cell-discount="{ row, value, rowIndex }">

View File

@ -9,9 +9,7 @@ import { getUrl } from 'src/composables/getUrl';
import { useSession } from 'src/composables/useSession'; import { useSession } from 'src/composables/useSession';
import VnLv from 'src/components/ui/VnLv.vue'; import VnLv from 'src/components/ui/VnLv.vue';
import VnUserLink from 'src/components/ui/VnUserLink.vue'; import VnUserLink from 'src/components/ui/VnUserLink.vue';
import ItemDescriptorProxy from 'src/pages/Item/Card/ItemDescriptorProxy.vue';
import VnTitle from 'src/components/common/VnTitle.vue'; import VnTitle from 'src/components/common/VnTitle.vue';
import CustomerDescriptorProxy from 'src/pages/Customer/Card/CustomerDescriptorProxy.vue';
import axios from 'axios'; import axios from 'axios';
import dashIfEmpty from 'src/filters/dashIfEmpty'; import dashIfEmpty from 'src/filters/dashIfEmpty';
@ -261,7 +259,6 @@ async function changeState(value) {
<template #value> <template #value>
<span class="link cursor-pointer"> <span class="link cursor-pointer">
{{ account.client?.name }} {{ account.client?.name }}
<CustomerDescriptorProxy :id="account.clientFk" />
</span> </span>
</template> </template>
</VnLv> </VnLv>
@ -308,11 +305,7 @@ async function changeState(value) {
color="blue" color="blue"
>{{ col.value }}</QBtn >{{ col.value }}</QBtn
> >
<ItemDescriptorProxy
v-if="col.name == 'description'"
:id="props.row.sale.itemFk"
:sale-fk="props.row.saleFk"
></ItemDescriptorProxy>
</QTh> </QTh>
</QTr> </QTr>
</template> </template>