diff --git a/src/components/NavBar.vue b/src/components/NavBar.vue
index ef5bdc6ac..040dde628 100644
--- a/src/components/NavBar.vue
+++ b/src/components/NavBar.vue
@@ -61,6 +61,7 @@ onMounted(() => stateStore.setMounted());
/>
diff --git a/src/components/VnTable/VnTable.vue b/src/components/VnTable/VnTable.vue
index 95b4b5866..17fabf10d 100644
--- a/src/components/VnTable/VnTable.vue
+++ b/src/components/VnTable/VnTable.vue
@@ -181,7 +181,7 @@ onMounted(() => {
watch(
() => $props.columns,
(value) => splitColumns(value),
- { immediate: true }
+ { immediate: true },
);
const isTableMode = computed(() => mode.value == TABLE_MODE);
@@ -212,7 +212,7 @@ function splitColumns(columns) {
// Status column
if (splittedColumns.value.chips.length) {
splittedColumns.value.columnChips = splittedColumns.value.chips.filter(
- (c) => !c.isId
+ (c) => !c.isId,
);
if (splittedColumns.value.columnChips.length)
splittedColumns.value.columns.unshift({
@@ -484,7 +484,9 @@ function handleSelection({ evt, added, rows: selectedRows }, rows) {
btn.isPrimary ? 'text-primary-light' : 'color-vn-text '
"
:style="`visibility: ${
- (btn.show && btn.show(row)) ?? true ? 'visible' : 'hidden'
+ ((btn.show && btn.show(row)) ?? true)
+ ? 'visible'
+ : 'hidden'
}`"
@click="btn.action(row)"
/>
diff --git a/src/components/common/RightAdvancedMenu.vue b/src/components/common/RightAdvancedMenu.vue
new file mode 100644
index 000000000..f5797a164
--- /dev/null
+++ b/src/components/common/RightAdvancedMenu.vue
@@ -0,0 +1,53 @@
+
+
+
+
+
+ {{ t('globals.advancedMenu') }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/components/common/RightMenu.vue b/src/components/common/RightMenu.vue
index 9512d32d4..1eded089e 100644
--- a/src/components/common/RightMenu.vue
+++ b/src/components/common/RightMenu.vue
@@ -17,7 +17,7 @@ onMounted(() => {
});
-
+
(checkboxOptions.value[opt].selected = false)
+ (opt) => (checkboxOptions.value[opt].selected = false),
);
await applyFilter();
}
@@ -378,7 +379,7 @@ watch(
() => router.currentRoute.value.params.id,
() => {
applyFilter();
- }
+ },
);
@@ -391,7 +392,7 @@ watch(
const changedModel = item.changedModel;
return {
locale: useCapitalize(
- validations[changedModel]?.locale?.name ?? changedModel
+ validations[changedModel]?.locale?.name ?? changedModel,
),
value: changedModel,
};
@@ -507,7 +508,7 @@ watch(
:title="
date.formatDate(
log.creationDate,
- 'DD/MM/YYYY hh:mm:ss'
+ 'DD/MM/YYYY hh:mm:ss',
) ?? `date:'dd/MM/yyyy HH:mm:ss'`
"
>
@@ -577,7 +578,7 @@ watch(
t(
`actions.${
actionsText[log.action]
- }`
+ }`,
)
"
/>
@@ -677,139 +678,144 @@ watch(
-
-
-
-
- selectFilter('search')"
- @focusout="() => selectFilter('search')"
- @clear="() => selectFilter('search')"
- >
-
-
- {{ t('tooltips.search') }}
-
-
-
-
-
-
-
-
-
-
- {{ t(`Users.${label}`) }}
-
-
-
-
-
+
+
+
+
+
+ selectFilter('search')"
+ @focusout="() => selectFilter('search')"
+ @clear="() => selectFilter('search')"
+ >
+
+
+ {{ t('tooltips.search') }}
+
+
+
+
+
+
+
+
-
-
-
-
-
-
- {{ opt.name }}
- {{ opt.nickname }}
-
-
+
+ {{ t(`Users.${label}`) }}
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+ {{ opt.name }}
+ {{ opt.nickname }}
+
+
+
+
+
+
+
+
+
+
+ {{
+ t('tooltips.changes')
+ }}
+
+
+
+
+
-
-
- {{
- t('tooltips.changes')
- }}
-
-
-
-
-
-
-
-
- evt.target.blur()"
- @clear="selectFilter('date', 'to')"
- v-model="dateFrom"
- clearable
- clear-icon="close"
- />
-
-
- evt.target.blur()"
- @clear="selectFilter('date', 'from')"
- v-model="dateTo"
- clearable
- clear-icon="close"
- />
-
-
-
+
+
+
+ evt.target.blur()"
+ @clear="selectFilter('date', 'to')"
+ v-model="dateFrom"
+ clearable
+ clear-icon="close"
+ />
+
+
+ evt.target.blur()"
+ @clear="selectFilter('date', 'from')"
+ v-model="dateTo"
+ clearable
+ clear-icon="close"
+ />
+
+
+
+
-import RightMenu from './RightMenu.vue';
+import RightAdvancedMenu from './RightAdvancedMenu.vue';
import VnSearchbar from 'components/ui/VnSearchbar.vue';
import VnTableFilter from '../VnTable/VnTableFilter.vue';
import { onBeforeMount, onMounted, onUnmounted, computed, ref } from 'vue';
@@ -54,6 +54,7 @@ const sectionValue = computed(() => $props.section ?? $props.dataKey);
const isMainSection = ref(false);
const searchbarId = 'section-searchbar';
+const advancedMenuSlot = 'advanced-menu';
const hasContent = useHasContent(`#${searchbarId}`);
onBeforeMount(() => {
@@ -93,9 +94,9 @@ function checkIsMain() {
/>
-
-
-
+
+
+
-
+
diff --git a/src/composables/useHasContent.js b/src/composables/useHasContent.js
index 8ab018376..21cb1f14d 100644
--- a/src/composables/useHasContent.js
+++ b/src/composables/useHasContent.js
@@ -5,7 +5,7 @@ export function useHasContent(selector) {
const hasContent = ref();
onMounted(() => {
- container.value = document.querySelector(selector);
+ container.value = document?.querySelector(selector);
if (!container.value) return;
const observer = new MutationObserver(() => {
diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml
index 473446970..1e22a07d4 100644
--- a/src/i18n/locale/en.yml
+++ b/src/i18n/locale/en.yml
@@ -7,7 +7,8 @@ globals:
entity: Entity
user: User
details: Details
- collapseMenu: Collapse left menu
+ collapseMenu: Collapse lateral menu
+ advancedMenu: Advanced menu
backToDashboard: Return to dashboard
notifications: Notifications
userPanel: User panel
diff --git a/src/i18n/locale/es.yml b/src/i18n/locale/es.yml
index b764b1e43..0d308bd84 100644
--- a/src/i18n/locale/es.yml
+++ b/src/i18n/locale/es.yml
@@ -8,6 +8,7 @@ globals:
user: Usuario
details: Detalles
collapseMenu: Contraer menú lateral
+ advancedMenu: Menú avanzado
backToDashboard: Volver al tablón
notifications: Notificaciones
userPanel: Panel de usuario
diff --git a/src/pages/Claim/Card/ClaimAction.vue b/src/pages/Claim/Card/ClaimAction.vue
index 2e890dba8..8ac7c224f 100644
--- a/src/pages/Claim/Card/ClaimAction.vue
+++ b/src/pages/Claim/Card/ClaimAction.vue
@@ -4,7 +4,6 @@ import { useQuasar } from 'quasar';
import { useI18n } from 'vue-i18n';
import { useRoute } from 'vue-router';
import axios from 'axios';
-import { useStateStore } from 'src/stores/useStateStore';
import { toDate, toPercentage, toCurrency } from 'filters/index';
import { tMobile } from 'src/composables/tMobile';
import CrudModel from 'src/components/CrudModel.vue';
@@ -13,11 +12,11 @@ import VnSelect from 'src/components/common/VnSelect.vue';
import ItemDescriptorProxy from 'src/pages/Item/Card/ItemDescriptorProxy.vue';
import TicketDescriptorProxy from 'src/pages/Ticket/Card/TicketDescriptorProxy.vue';
import { useArrayData } from 'composables/useArrayData';
+import RightMenu from 'src/components/common/RightMenu.vue';
const { t } = useI18n();
const quasar = useQuasar();
const route = useRoute();
-const stateStore = computed(() => useStateStore());
const claim = ref(null);
const claimRef = ref();
const claimId = route.params.id;
@@ -201,58 +200,62 @@ async function post(query, params) {
auto-load
@on-fetch="(data) => (destinationTypes = data)"
/>
-
-
- {{ `${t('Total claimed')}: ${toCurrency(totalClaimed)}` }}
-
-
-
-
-
- {{ t('claim.actions') }}
-
- save({ responsibility: value })"
- label-always
- color="primary"
- markers
- :marker-labels="marker_labels"
- :min="DEFAULT_MIN_RESPONSABILITY"
- :max="DEFAULT_MAX_RESPONSABILITY"
+
+
+
+ {{ `${t('Total claimed')}: ${toCurrency(totalClaimed)}` }}
+
+
+
+
+
+ {{ t('claim.actions') }}
+
+ save({ responsibility: value })"
+ label-always
+ color="primary"
+ markers
+ :marker-labels="marker_labels"
+ :min="DEFAULT_MIN_RESPONSABILITY"
+ :max="DEFAULT_MAX_RESPONSABILITY"
+ />
+
+
+
+
+
+ save({ isChargedToMana: value })"
/>
+ {{ t('mana') }}
-
-
-
-
- save({ isChargedToMana: value })"
+
+
+
- {{ t('mana') }}
-
-
-
-
-
-
-
+
+
+
-
+
diff --git a/src/pages/Order/Card/OrderCatalog.vue b/src/pages/Order/Card/OrderCatalog.vue
index 186f216fb..d7efdb726 100644
--- a/src/pages/Order/Card/OrderCatalog.vue
+++ b/src/pages/Order/Card/OrderCatalog.vue
@@ -1,7 +1,7 @@
-
-
-
-
-
- {{ t('ticket.boxing.selectTime') }} ({{ time.min }}-{{
- time.max
- }})
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- #{{ expedition.id }}
-
-
- {{ t('globals.created') }}
-
- {{ date.formatDate(expedition.created, 'YYYY-MM-DD HH:mm:ss') }}
-
- {{ t('globals.item') }}
- {{ expedition.packagingItemFk }}
- {{ t('ticket.boxing.worker') }}
- {{ expedition.userName }}
-
-
-
-
+
+
+
+
+
+
+ {{ t('ticket.boxing.selectTime') }} ({{ time.min }}-{{
+ time.max
+ }})
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ #{{ expedition.id }}
+
+
+ {{ t('globals.created') }}
+
+ {{
+ date.formatDate(expedition.created, 'YYYY-MM-DD HH:mm:ss')
+ }}
+
+ {{ t('globals.item') }}
+ {{ expedition.packagingItemFk }}
+ {{ t('ticket.boxing.worker') }}
+ {{ expedition.userName }}
+
+
+
+
+
-import { ref, computed, onMounted, watch, nextTick } from 'vue';
+import { ref, computed, watch, nextTick } from 'vue';
import { useI18n } from 'vue-i18n';
import { useRoute } from 'vue-router';
@@ -9,15 +9,14 @@ import FetchData from 'components/FetchData.vue';
import ZoneDescriptorProxy from 'src/pages/Zone/Card/ZoneDescriptorProxy.vue';
import VnImg from 'src/components/ui/VnImg.vue';
-import { useStateStore } from 'stores/useStateStore';
import { dashIfEmpty } from 'src/filters';
import { useArrayData } from 'composables/useArrayData';
import { toCurrency } from 'filters/index';
import axios from 'axios';
import VnTable from 'src/components/VnTable/VnTable.vue';
+import RightMenu from 'src/components/common/RightMenu.vue';
const route = useRoute();
-const stateStore = useStateStore();
const { t } = useI18n();
const salesRef = ref(null);
const arrayData = useArrayData('ticketData');
@@ -164,10 +163,6 @@ const getTicketVolume = async () => {
const { data } = await axios.get(`Tickets/${ticketData.value.id}/getVolume`);
ticketVolume.value = data[0].volume;
};
-
-onMounted(() => {
- stateStore.rightDrawer = true;
-});
@@ -178,93 +173,121 @@ onMounted(() => {
@on-fetch="(data) => (components = data)"
auto-load
/>
-
-
-
-
- {{ t('basicData.total') }}
-
-
-
- {{ t('ticketComponents.baseToCommission') }}:
-
- {{ toCurrency(getBase) }}
-
-
- {{ t('ticketComponents.totalWithoutVat') }}:
-
- {{ toCurrency(getTotal) }}
-
-
-
-
-
- {{ t('ticketComponents.components') }}
-
-
-
+
+
-
- {{ component.name }}:
-
- {{
- toCurrency(component.value, 'EUR', 3)
- }}
-
-
-
-
-
- {{ t('ticketComponents.zoneBreakdown') }}
-
-
-
- {{ t('basicData.price') }}:
- {{ toCurrency(ticketData?.zonePrice, 'EUR', 2) }}
-
-
-
- {{ t('ticketComponents.bonus') }}:
-
- {{ toCurrency(ticketData?.zoneBonus, 'EUR', 2) }}
-
-
- {{ t('ticketList.zone') }}:
-
- {{ dashIfEmpty(ticketData?.zone?.name) }}
-
-
-
-
- {{ t('volume.volume') }}:
- {{ ticketVolume }}
-
-
-
- {{ t('ticketComponents.packages') }}:
-
- {{ dashIfEmpty(ticketData?.packages) }}
-
-
-
-
-
- {{ t('ticketComponents.theoricalCost') }}
-
-
-
-
- {{ t('ticketComponents.totalPrice') }}:
-
- {{ toCurrency(theoricalCost, 'EUR', 2) }}
-
-
-
+
+
+ {{ t('basicData.total') }}
+
+
+
+ {{ t('ticketComponents.baseToCommission') }}:
+
+ {{ toCurrency(getBase) }}
+
+
+ {{ t('ticketComponents.totalWithoutVat') }}:
+
+ {{ toCurrency(getTotal) }}
+
+
+
+
+
+ {{ t('ticketComponents.components') }}
+
+
+
+
+ {{ component.name }}:
+
+ {{
+ toCurrency(component.value, 'EUR', 3)
+ }}
+
+
+
+
+
+ {{ t('ticketComponents.zoneBreakdown') }}
+
+
+
+
+ {{ t('basicData.price') }}:
+
+ {{ toCurrency(ticketData?.zonePrice, 'EUR', 2) }}
+
+
+
+ {{ t('ticketComponents.bonus') }}:
+
+ {{ toCurrency(ticketData?.zoneBonus, 'EUR', 2) }}
+
+
+
+ {{ t('ticketList.zone') }}:
+
+
+ {{ dashIfEmpty(ticketData?.zone?.name) }}
+
+
+
+
+
+ {{ t('volume.volume') }}:
+
+ {{ ticketVolume }}
+
+
+
+ {{ t('ticketComponents.packages') }}:
+
+ {{ dashIfEmpty(ticketData?.packages) }}
+
+
+
+
+
+ {{ t('ticketComponents.theoricalCost') }}
+
+
+
+
+ {{ t('ticketComponents.totalPrice') }}:
+
+ {{ toCurrency(theoricalCost, 'EUR', 2) }}
+
+
+
+
{
};
onMounted(async () => {
- stateStore.rightDrawer = true;
getConfig();
});
@@ -620,29 +618,38 @@ watch(
-
-
-
- {{ t('ticketSale.subtotal') }}:
-
- {{ toCurrency(store.data?.totalWithoutVat) }}
-
-
- {{ t('ticketSale.tax') }}:
- {{
- toCurrency(store.data?.totalWithVat - store.data?.totalWithoutVat)
- }}
-
-
- {{ t('basicData.total') }}:
- {{ toCurrency(store.data?.totalWithVat) }}
-
-
-
+
+
+
+
+ {{ t('ticketSale.subtotal') }}:
+
+ {{ toCurrency(store.data?.totalWithoutVat) }}
+
+
+
+ {{ t('ticketSale.tax') }}:
+
+ {{
+ toCurrency(store.data?.totalWithVat - store.data?.totalWithoutVat)
+ }}
+
+
+
+ {{ t('basicData.total') }}:
+
+ {{ toCurrency(store.data?.totalWithVat) }}
+
+
+
+
-
+
diff --git a/src/pages/Worker/Card/WorkerCalendar.vue b/src/pages/Worker/Card/WorkerCalendar.vue
index e9cb793f4..5ca95a1a4 100644
--- a/src/pages/Worker/Card/WorkerCalendar.vue
+++ b/src/pages/Worker/Card/WorkerCalendar.vue
@@ -1,18 +1,16 @@