diff --git a/src/components/common/TableVisibleColumns.vue b/src/components/common/TableVisibleColumns.vue
index 7aa696a07..a4e4afafe 100644
--- a/src/components/common/TableVisibleColumns.vue
+++ b/src/components/common/TableVisibleColumns.vue
@@ -52,7 +52,7 @@ const toggleMarkAll = (val) => {
const getConfig = async (url, filter) => {
const response = await axios.get(url, {
- params: { filter: filter },
+ params: { filter: JSON.stringify(filter) },
});
return response.data && response.data.length > 0 ? response.data[0] : null;
};
@@ -60,7 +60,7 @@ const getConfig = async (url, filter) => {
const fetchViewConfigData = async () => {
try {
const userConfigFilter = {
- where: { tableCode: $props.tableCode, userFk: user.id },
+ where: { tableCode: $props.tableCode, userFk: user.value.id },
};
const userConfig = await getConfig('UserConfigViews', userConfigFilter);
@@ -74,8 +74,14 @@ const fetchViewConfigData = async () => {
const defaultConfig = await getConfig('DefaultViewConfigs', defaultConfigFilter);
if (defaultConfig) {
+ // Si el backend devuelve una configuración por defecto la usamos
setUserConfigViewData(defaultConfig.columns);
return;
+ } else {
+ // Si no hay configuración por defecto mostramos todas las columnas
+ const defaultColumns = {};
+ $props.allColumns.forEach((col) => (defaultColumns[col] = true));
+ setUserConfigViewData(defaultColumns);
}
} catch (err) {
console.err('Error fetching config view data', err);
diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml
index 75b07801a..aed1568bd 100644
--- a/src/i18n/locale/en.yml
+++ b/src/i18n/locale/en.yml
@@ -550,6 +550,7 @@ ticket:
observation: Notes
ticketAdvance: Advance tickets
futureTickets: Future tickets
+ expedition: Expedition
purchaseRequest: Purchase request
weeklyTickets: Weekly tickets
services: Service
diff --git a/src/i18n/locale/es.yml b/src/i18n/locale/es.yml
index 452e387c9..684da21b9 100644
--- a/src/i18n/locale/es.yml
+++ b/src/i18n/locale/es.yml
@@ -548,6 +548,7 @@ ticket:
observation: Notas
ticketAdvance: Adelantar tickets
futureTickets: Tickets a futuro
+ expedition: Expedición
purchaseRequest: Petición de compra
weeklyTickets: Tickets programados
services: Servicios
diff --git a/src/pages/Ticket/Card/ExpeditionNewTicket.vue b/src/pages/Ticket/Card/ExpeditionNewTicket.vue
new file mode 100644
index 000000000..da775a368
--- /dev/null
+++ b/src/pages/Ticket/Card/ExpeditionNewTicket.vue
@@ -0,0 +1,78 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Ticket/Card/TicketExpedition.vue b/src/pages/Ticket/Card/TicketExpedition.vue
new file mode 100644
index 000000000..bddfa2bfd
--- /dev/null
+++ b/src/pages/Ticket/Card/TicketExpedition.vue
@@ -0,0 +1,474 @@
+
+
+
+ (itemsOptions = data)"
+ />
+
+
+
+
+
+
+
+
+ {{ t('Select lines to see the options') }}
+
+
+
+
+ {{
+ t('expedition.newTicketWithoutRoute')
+ }}
+
+
+
+
+ {{
+ t('expedition.newTicketWithRoute')
+ }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ row.packagingItemFk }}
+
+
+
+
+
+
+ {{ row.available }}
+
+
+
+
+
+
+
+
+ {{ toCurrency(row.price) }}
+
+
+
+
+
+ {{ toCurrency(row.price) }}
+
+
+
+
+
+
+ {{ toPercentage(row.discount / 100) }}
+
+
+
+
+
+ {{ toPercentage(row.discount / 100) }}
+
+
+
+
+
+
+ {{ t('expedition.historyAction') }}
+
+
+
+
+
+
+
+
+
+
+
+
+ {{ row.name }}
+
+
+
+
+
+
diff --git a/src/pages/Ticket/Card/TicketSale.vue b/src/pages/Ticket/Card/TicketSale.vue
index 32408bf67..84f598d3c 100644
--- a/src/pages/Ticket/Card/TicketSale.vue
+++ b/src/pages/Ticket/Card/TicketSale.vue
@@ -774,6 +774,5 @@ es:
Continue anyway?: ¿Continuar de todas formas?
You are going to delete lines of the ticket: Vas a eliminar lineas del ticket
Add item: Añadir artículo
- Select lines to see the options: Selecciona líneas para ver las opciones
Transfer lines: Transferir líneas
diff --git a/src/pages/Ticket/locale/en.yml b/src/pages/Ticket/locale/en.yml
index 39aed4af7..6788b4b44 100644
--- a/src/pages/Ticket/locale/en.yml
+++ b/src/pages/Ticket/locale/en.yml
@@ -93,6 +93,25 @@ futureTickets:
moveTicketSuccess: Tickets moved successfully!
searchInfo: Search future tickets by date
futureTicket: Future tickets
+expedition:
+ id: Expedition
+ item: Item
+ name: Name
+ packageType: Package type
+ counter: Counter
+ externalId: externalId
+ created: Created
+ state: State
+ historyAction: Status log
+ newTicketWithRoute: New ticket with route
+ newTicketWithoutRoute: New ticket without route
+ landed: Landed
+ routeId: Route id
+ deleteExpedition: Delete expedition
+ expeditionRemoved: Expedition removed
+ removeExpeditionSubtitle: Are you sure you want to delete this expedition?
+ worker: Worker
+ move: Move
basicData:
next: Next
back: Back
diff --git a/src/pages/Ticket/locale/es.yml b/src/pages/Ticket/locale/es.yml
index d5b50efc5..a7006beea 100644
--- a/src/pages/Ticket/locale/es.yml
+++ b/src/pages/Ticket/locale/es.yml
@@ -164,5 +164,25 @@ ticketSale:
shipped: F. Envío
agency: Agencia
address: Consignatario
+expedition:
+ id: Expedición
+ item: Artículo
+ name: Nombre
+ packageType: Package type
+ counter: Contador
+ externalId: externalId
+ created: Fecha creación
+ state: Estado
+ historyAction: Historial de estados
+ newTicketWithRoute: Nuevo ticket con ruta
+ newTicketWithoutRoute: Nuevo ticket sin ruta
+ landed: F. entrega
+ routeId: Id ruta
+ deleteExpedition: Eliminar expedición
+ expeditionRemoved: Expedición eliminada
+ removeExpeditionSubtitle: ¿Está seguro de eliminar esta expedición?
+ worker: Trabajador
+ move: Mover
Search ticket: Buscar tickets
You can search by ticket id or alias: Puedes buscar por id o alias del ticket
+Select lines to see the options: Selecciona líneas para ver las opciones
diff --git a/src/router/modules/ticket.js b/src/router/modules/ticket.js
index 1e635470b..7966ffa9a 100644
--- a/src/router/modules/ticket.js
+++ b/src/router/modules/ticket.js
@@ -14,15 +14,16 @@ export default {
main: ['TicketList', 'TicketAdvance', 'TicketWeekly', 'TicketFuture'],
card: [
'TicketBasicData',
- 'TicketBoxing',
- 'TicketSms',
+ 'TicketPurchaseRequest',
'TicketSale',
'TicketLog',
- 'TicketPurchaseRequest',
+ 'TicketExpedition',
'TicketService',
- 'TicketTracking',
'TicketVolume',
'TicketNotes',
+ 'TicketTracking',
+ 'TicketBoxing',
+ 'TicketSms',
],
},
children: [
@@ -70,8 +71,8 @@ export default {
component: () => import('src/pages/Ticket/TicketFuture.vue'),
},
{
- path: 'advance',
name: 'TicketAdvance',
+ path: 'advance',
meta: {
title: 'ticketAdvance',
icon: 'keyboard_double_arrow_left',
@@ -142,12 +143,48 @@ export default {
},
component: () => import('src/pages/Ticket/Card/TicketLog.vue'),
},
+ {
+ path: 'observation',
+ name: 'TicketNotes',
+ meta: {
+ title: 'notes',
+ icon: 'vn:notes',
+ },
+ component: () => import('src/pages/Ticket/Card/TicketNotes.vue'),
+ },
+ {
+ path: 'volume',
+ name: 'TicketVolume',
+ meta: {
+ title: 'volume',
+ icon: 'vn:volume',
+ },
+ component: () => import('src/pages/Ticket/Card/TicketVolume.vue'),
+ },
+ {
+ path: 'expedition',
+ name: 'TicketExpedition',
+ meta: {
+ title: 'expedition',
+ icon: 'vn:package',
+ },
+ component: () => import('src/pages/Ticket/Card/TicketExpedition.vue'),
+ },
+ {
+ path: 'service',
+ name: 'TicketService',
+ meta: {
+ title: 'services',
+ icon: 'vn:services',
+ },
+ component: () => import('src/pages/Ticket/Card/TicketService.vue'),
+ },
{
path: 'boxing',
name: 'TicketBoxing',
meta: {
title: 'boxing',
- icon: 'vn:package',
+ icon: 'science',
},
component: () => import('src/pages/Ticket/Card/TicketBoxing.vue'),
},
@@ -160,34 +197,6 @@ export default {
},
component: () => import('src/pages/Ticket/Card/TicketSms.vue'),
},
-
- {
- path: 'service',
- name: 'TicketService',
- meta: {
- title: 'services',
- icon: 'vn:services',
- },
- component: () => import('src/pages/Ticket/Card/TicketService.vue'),
- },
- {
- path: 'volume',
- name: 'TicketVolume',
- meta: {
- title: 'volume',
- icon: 'vn:volume',
- },
- component: () => import('src/pages/Ticket/Card/TicketVolume.vue'),
- },
- {
- path: 'observation',
- name: 'TicketNotes',
- meta: {
- title: 'notes',
- icon: 'vn:notes',
- },
- component: () => import('src/pages/Ticket/Card/TicketNotes.vue'),
- },
],
},
],