From 52e50ddc246cc36a911146c3818ceddc11dc68cd Mon Sep 17 00:00:00 2001 From: Jon Date: Tue, 11 Feb 2025 12:20:27 +0100 Subject: [PATCH 1/7] feat: refs #8555 added new filter field and translations --- src/pages/Travel/ExtraCommunity.vue | 62 ++++++++++------------- src/pages/Travel/ExtraCommunityFilter.vue | 61 +++++++++------------- src/pages/Travel/locale/en.yml | 22 ++++++++ src/pages/Travel/locale/es.yml | 23 +++++++++ 4 files changed, 95 insertions(+), 73 deletions(-) create mode 100644 src/pages/Travel/locale/en.yml create mode 100644 src/pages/Travel/locale/es.yml diff --git a/src/pages/Travel/ExtraCommunity.vue b/src/pages/Travel/ExtraCommunity.vue index dee9d923a01..ac46caa44aa 100644 --- a/src/pages/Travel/ExtraCommunity.vue +++ b/src/pages/Travel/ExtraCommunity.vue @@ -2,6 +2,7 @@ import { onMounted, ref, computed, watch } from 'vue'; import { QBtn } from 'quasar'; import { useI18n } from 'vue-i18n'; +import { useRoute } from 'vue-router'; import SupplierDescriptorProxy from 'src/pages/Supplier/Card/SupplierDescriptorProxy.vue'; import TravelDescriptorProxy from 'src/pages/Travel/Card/TravelDescriptorProxy.vue'; @@ -22,6 +23,8 @@ import VnPopup from 'src/components/common/VnPopup.vue'; const stateStore = useStateStore(); const { t } = useI18n(); const { openReport } = usePrintService(); +const route = useRoute(); +const tableParams = ref(); const shippedFrom = ref(Date.vnNew()); const landedTo = ref(Date.vnNew()); @@ -143,7 +146,7 @@ const columns = computed(() => [ sortable: true, }, { - label: t('globals.pageTitles.supplier'), + label: t('extraCommunity.cargoShip'), field: 'cargoSupplierNickname', name: 'cargoSupplierNickname', align: 'left', @@ -171,7 +174,7 @@ const columns = computed(() => [ ? value.reduce((sum, entry) => { return sum + (entry.invoiceAmount || 0); }, 0) - : 0 + : 0, ), }, { @@ -200,7 +203,7 @@ const columns = computed(() => [ sortable: true, }, { - label: t('kg'), + label: t('extraCommunity.kg'), field: 'kg', name: 'kg', align: 'left', @@ -208,7 +211,7 @@ const columns = computed(() => [ sortable: true, }, { - label: t('physicKg'), + label: t('extraCommunity.physicKg'), field: 'loadedKg', name: 'loadedKg', align: 'left', @@ -232,7 +235,7 @@ const columns = computed(() => [ sortable: true, }, { - label: t('shipped'), + label: t('extraCommunity.shipped'), field: 'shipped', name: 'shipped', align: 'left', @@ -249,7 +252,7 @@ const columns = computed(() => [ sortable: true, }, { - label: t('landed'), + label: t('extraCommunity.landed'), field: 'landed', name: 'landed', align: 'left', @@ -258,7 +261,7 @@ const columns = computed(() => [ format: (value) => toDate(value), }, { - label: t('notes'), + label: t('extraCommunity.notes'), field: '', name: 'notes', align: 'center', @@ -284,7 +287,7 @@ watch( if (!arrayData.store.data) return; onStoreDataChange(); }, - { deep: true, immediate: true } + { deep: true, immediate: true }, ); const openReportPdf = () => { @@ -451,13 +454,24 @@ const getColor = (percentage) => { for (const { value, className } of travelKgPercentages.value) if (percentage > value) return className; }; + +const filteredEntries = (entries) => { + if (!tableParams?.value?.entrySupplierFk) return entries; + return entries?.filter( + (entry) => entry.supplierFk === tableParams?.value?.entrySupplierFk, + ); +}; + +watch(route, () => { + tableParams.value = JSON.parse(route.query.table); +}); {{ toPercentage(row.discount / 100) }} - From 93401dfcdca0100113b9003e3664c4ca7c78ce6c Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Tue, 18 Feb 2025 00:40:39 +0100 Subject: [PATCH 3/7] fix: use mana in ticketSale.discount --- src/components/ui/VnUsesMana.vue | 5 +++++ src/pages/Ticket/Card/TicketEditMana.vue | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/components/ui/VnUsesMana.vue b/src/components/ui/VnUsesMana.vue index 891de5f630d..ee2888e44a2 100644 --- a/src/components/ui/VnUsesMana.vue +++ b/src/components/ui/VnUsesMana.vue @@ -53,3 +53,8 @@ const manaCode = ref(props.manaCode); /> + + es: + Promotion mana: Maná promoción + Claim mana: Maná reclamación + diff --git a/src/pages/Ticket/Card/TicketEditMana.vue b/src/pages/Ticket/Card/TicketEditMana.vue index 693875712d1..a55658a07e7 100644 --- a/src/pages/Ticket/Card/TicketEditMana.vue +++ b/src/pages/Ticket/Card/TicketEditMana.vue @@ -47,7 +47,10 @@ const cancel = () => {
Mana: {{ toCurrency(mana) }}
- + +
+ +
{{ t('New price') }} @@ -56,9 +59,6 @@ const cancel = () => {
-
- -
Date: Tue, 18 Feb 2025 07:32:54 +0100 Subject: [PATCH 4/7] fix: add data-cy attribute to card button for improved testing --- src/components/VnTable/VnTable.vue | 1 + test/cypress/integration/entry/myEntry.spec.js | 6 ++---- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/src/components/VnTable/VnTable.vue b/src/components/VnTable/VnTable.vue index 2559452e482..33bcb533a44 100644 --- a/src/components/VnTable/VnTable.vue +++ b/src/components/VnTable/VnTable.vue @@ -861,6 +861,7 @@ function cardClick(_, row) { :key="index" :title="btn.title" :icon="btn.icon" + data-cy="cardBtn" class="q-pa-xs" flat :class=" diff --git a/test/cypress/integration/entry/myEntry.spec.js b/test/cypress/integration/entry/myEntry.spec.js index 49d75cf3924..ed469d9e2e5 100644 --- a/test/cypress/integration/entry/myEntry.spec.js +++ b/test/cypress/integration/entry/myEntry.spec.js @@ -8,11 +8,9 @@ describe('EntryMy when is supplier', () => { }, }); }); - + it('should open buyLabel when is supplier', () => { - cy.get( - '[to="/null/3"] > .q-card > :nth-child(2) > .q-btn > .q-btn__content > .q-icon' - ).click(); + cy.dataCy('cardBtn').eq(2).click(); cy.dataCy('printLabelsBtn').click(); cy.window().its('open').should('be.called'); }); From ced34ccec37fd23e012c60005881904d92e9cac6 Mon Sep 17 00:00:00 2001 From: jorgep Date: Tue, 18 Feb 2025 10:08:28 +0100 Subject: [PATCH 5/7] fix: refs #8225 update email verification condition in WorkerDescriptorMenu --- src/pages/Worker/Card/WorkerDescriptorMenu.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Worker/Card/WorkerDescriptorMenu.vue b/src/pages/Worker/Card/WorkerDescriptorMenu.vue index 8d82dc839f7..0dcb4fd7115 100644 --- a/src/pages/Worker/Card/WorkerDescriptorMenu.vue +++ b/src/pages/Worker/Card/WorkerDescriptorMenu.vue @@ -53,7 +53,7 @@ const showChangePasswordDialog = () => { Date: Tue, 18 Feb 2025 10:22:26 +0100 Subject: [PATCH 6/7] fix: refs #6943 rollback --- src/components/common/VnCardBeta.vue | 28 +++++++++++----------------- 1 file changed, 11 insertions(+), 17 deletions(-) diff --git a/src/components/common/VnCardBeta.vue b/src/components/common/VnCardBeta.vue index 16fc14c2c41..d2bed62575c 100644 --- a/src/components/common/VnCardBeta.vue +++ b/src/components/common/VnCardBeta.vue @@ -38,23 +38,17 @@ onBeforeMount(async () => { } }); -if (props.baseUrl) { - onBeforeRouteUpdate(async (to, from) => { - if (hasRouteParam(to.params)) { - const { matched } = router.currentRoute.value; - const { name } = matched.at(-3); - if (name) { - router.push({ name, params: to.params }); - } - } - if (to.params.id !== from.params.id) { - arrayData.store.url = `${props.baseUrl}/${to.params.id}`; - await arrayData.fetch({ append: false, updateRouter: false }); - } - }); -} -function hasRouteParam(params, valueToCheck = ':addressId') { - return Object.values(params).includes(valueToCheck); +onBeforeRouteUpdate(async (to, from) => { + const id = to.params.id; + if (id !== from.params.id) await fetch(id, true); +}); + +async function fetch(id, append = false) { + const regex = /\/(\d+)/; + if (props.idInWhere) arrayData.store.filter.where = { id }; + else if (!regex.test(props.url)) arrayData.store.url = `${props.url}/${id}`; + else arrayData.store.url = props.url.replace(regex, `/${id}`); + await arrayData.fetch({ append, updateRouter: false }); }