@@ -36,12 +50,6 @@ const $props = defineProps({
margin-right: 25px;
}
-.q_chip {
- display: flex;
- flex-direction: column;
- justify-content: center;
-}
-
.card-list-body {
display: flex;
justify-content: space-between;
diff --git a/src/components/ui/CardSummary.vue b/src/components/ui/CardSummary.vue
index 72ac0a8f0..0e0bd47ee 100644
--- a/src/components/ui/CardSummary.vue
+++ b/src/components/ui/CardSummary.vue
@@ -27,7 +27,7 @@ defineExpose({
async function fetch() {
const params = {};
- if (props.filter) params.filter = props.filter;
+ if (props.filter) params.filter = JSON.stringify(props.filter);
const { data } = await axios.get(props.url, { params });
entity.value = data;
diff --git a/src/i18n/en/index.js b/src/i18n/en/index.js
index 632ecd4ec..80bb80745 100644
--- a/src/i18n/en/index.js
+++ b/src/i18n/en/index.js
@@ -424,6 +424,32 @@ export default {
comercial: 'Comercial',
},
},
+ shelving:{
+ pageTitles: {
+ shelving: 'Shelving',
+ shelvingList: 'Shelving List',
+ createShelving: 'Create shelving',
+ summary: 'Summary',
+ basicData: 'Basic Data',
+ },
+ list: {
+ parking: 'Parking',
+ priority: 'Priority',
+ },
+ summary: {
+ code: 'Code',
+ parking: 'Parking',
+ priority: 'Priority',
+ worker: 'Worker',
+ recyclable: 'Recyclable'
+ },
+ basicData: {
+ code: 'Code',
+ parking: 'Parking',
+ priority: 'Priority',
+ recyclable: 'Recyclable'
+ }
+ },
worker: {
pageTitles: {
workers: 'Workers',
diff --git a/src/i18n/es/index.js b/src/i18n/es/index.js
index da9bbd21b..6a01cc5a5 100644
--- a/src/i18n/es/index.js
+++ b/src/i18n/es/index.js
@@ -426,6 +426,32 @@ export default {
comercial: 'Comercial',
},
},
+ shelving:{
+ pageTitles: {
+ shelving: 'Carros',
+ shelvingList: 'Listado de carros',
+ createShelving: 'Crear carro',
+ summary: 'Resumen',
+ basicData: 'Datos básicos',
+ },
+ list: {
+ parking: 'Parking',
+ priority: 'Prioridad',
+ },
+ summary: {
+ code: 'Código',
+ parking: 'Parking',
+ priority: 'Prioridad',
+ worker: 'Trabajador',
+ recyclable: 'Reciclable'
+ },
+ basicData: {
+ code: 'Código',
+ parking: 'Parking',
+ priority: 'Prioridad',
+ recyclable: 'Reciclable'
+ }
+ },
worker: {
pageTitles: {
workers: 'Trabajadores',
diff --git a/src/pages/InvoiceOut/InvoiceOutList.vue b/src/pages/InvoiceOut/InvoiceOutList.vue
index 23ccca945..7b1b3d0ca 100644
--- a/src/pages/InvoiceOut/InvoiceOutList.vue
+++ b/src/pages/InvoiceOut/InvoiceOutList.vue
@@ -1,5 +1,5 @@
+
+
+
+
+
+
+
+ {{ t(`params.${tag.label}`) }}:
+ {{ formatFn(tag.value) }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+en:
+ params:
+ parkingFk: Parking
+ userFk: Worker
+ isRecyclable: Recyclable
+es:
+ params:
+ parkingFk: Parking
+ userFk: Trabajador
+ isRecyclable: Reciclable
+
diff --git a/src/pages/Shelving/ShelvingList.vue b/src/pages/Shelving/ShelvingList.vue
new file mode 100644
index 000000000..e18bb8b92
--- /dev/null
+++ b/src/pages/Shelving/ShelvingList.vue
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+ {{ t('globals.collapseMenu') }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/ShelvingMain.vue b/src/pages/Shelving/ShelvingMain.vue
new file mode 100644
index 000000000..66ce78f23
--- /dev/null
+++ b/src/pages/Shelving/ShelvingMain.vue
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/Summary/ShelvingBasicData.vue b/src/pages/Shelving/Summary/ShelvingBasicData.vue
new file mode 100644
index 000000000..de2867e73
--- /dev/null
+++ b/src/pages/Shelving/Summary/ShelvingBasicData.vue
@@ -0,0 +1,105 @@
+
+
+
+
+
+
+
+
+
+
+ filter(value, update, parkingSelectFilter)
+ "
+ :rules="validate('shelving.parkingFk')"
+ :input-debounce="0"
+ />
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/Summary/ShelvingSummary.vue b/src/pages/Shelving/Summary/ShelvingSummary.vue
new file mode 100644
index 000000000..c35512e37
--- /dev/null
+++ b/src/pages/Shelving/Summary/ShelvingSummary.vue
@@ -0,0 +1,68 @@
+
+
+
+
+
+ {{ entity.code }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/Summary/ShelvingSummaryDialog.vue b/src/pages/Shelving/Summary/ShelvingSummaryDialog.vue
new file mode 100644
index 000000000..137820c25
--- /dev/null
+++ b/src/pages/Shelving/Summary/ShelvingSummaryDialog.vue
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/Summary/ShelvingSummaryPage.vue b/src/pages/Shelving/Summary/ShelvingSummaryPage.vue
new file mode 100644
index 000000000..7b8f0388d
--- /dev/null
+++ b/src/pages/Shelving/Summary/ShelvingSummaryPage.vue
@@ -0,0 +1,32 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/components/ShelvingDescriptor.vue b/src/pages/Shelving/components/ShelvingDescriptor.vue
new file mode 100644
index 000000000..a4a72a6f8
--- /dev/null
+++ b/src/pages/Shelving/components/ShelvingDescriptor.vue
@@ -0,0 +1,70 @@
+
+
+
+
+
+
+
+
+
+
+ {{ entity.worker?.user?.nickname }}
+
+
+
+
+
+
+
+
+
+
diff --git a/src/pages/Shelving/components/ShelvingDescriptorMenu.vue b/src/pages/Shelving/components/ShelvingDescriptorMenu.vue
new file mode 100644
index 000000000..6290cda75
--- /dev/null
+++ b/src/pages/Shelving/components/ShelvingDescriptorMenu.vue
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+ {{ t('deleteShelving') }}
+
+
+
+
+{
+ "en": {
+ "deleteShelving": "Delete Shelving"
+ },
+ "es": {
+ "deleteShelving": "Eliminar carro"
+ }
+}
+
diff --git a/src/pages/Shelving/components/ShelvingDescriptorProxy.vue b/src/pages/Shelving/components/ShelvingDescriptorProxy.vue
new file mode 100644
index 000000000..69cd63f6b
--- /dev/null
+++ b/src/pages/Shelving/components/ShelvingDescriptorProxy.vue
@@ -0,0 +1,15 @@
+
+
+
+
+
+
diff --git a/src/pages/Shelving/components/ShelvingSearchbar.vue b/src/pages/Shelving/components/ShelvingSearchbar.vue
new file mode 100644
index 000000000..89a4de01e
--- /dev/null
+++ b/src/pages/Shelving/components/ShelvingSearchbar.vue
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+es:
+ Search shelving: Buscar carros
+ You can search by shelving reference: Puedes buscar por referencia del carro
+
diff --git a/src/router/modules/index.js b/src/router/modules/index.js
index d6141fb81..156f0d104 100644
--- a/src/router/modules/index.js
+++ b/src/router/modules/index.js
@@ -3,6 +3,7 @@ import Ticket from './ticket';
import Claim from './claim';
import InvoiceOut from './invoiceOut';
import Worker from './worker';
+import Shelving from './shelving';
import Wagon from './wagon';
import Route from './route';
import Supplier from './Supplier';
@@ -14,6 +15,7 @@ export default [
Claim,
InvoiceOut,
Worker,
+ Shelving,
Wagon,
Route,
Supplier,
diff --git a/src/router/modules/shelving.js b/src/router/modules/shelving.js
new file mode 100644
index 000000000..ee60d7461
--- /dev/null
+++ b/src/router/modules/shelving.js
@@ -0,0 +1,63 @@
+import {RouterView} from "vue-router";
+
+export default {
+ path: '/shelving',
+ name: 'Shelving',
+ meta: {
+ title: 'shelving',
+ icon: 'vn:trolley'
+ },
+ component: RouterView,
+ redirect: { name: 'ShelvingMain' },
+ menus: {
+ main: ['ShelvingList'],
+ card: ['ShelvingBasicData']
+ },
+ children: [
+ {
+ path: '',
+ name: 'ShelvingMain',
+ component: () => import('src/pages/Shelving/ShelvingMain.vue'),
+ redirect: { name: 'ShelvingList' },
+ children: [
+ {
+ path: 'list',
+ name: 'ShelvingList',
+ meta: {
+ title: 'shelvingList',
+ icon: 'vn:trolley',
+ },
+ component: () => import('src/pages/Shelving/ShelvingList.vue'),
+ },
+ ],
+ },
+ {
+ name: 'ShelvingLayout',
+ path: ':id',
+ component: () => import('pages/Shelving/Summary/ShelvingSummaryPage.vue'),
+ redirect: { name: 'ShelvingSummary' },
+ children: [
+ {
+ name: 'ShelvingSummary',
+ path: 'summary',
+ meta: {
+ title: 'summary',
+ },
+ component: () =>
+ import('pages/Shelving/Summary/ShelvingSummary.vue'),
+ },
+ {
+ name: 'ShelvingBasicData',
+ path: 'basic-data',
+ meta: {
+ title: 'basicData',
+ icon: 'vn:settings',
+ roles: ['salesPerson'],
+ },
+ component: () => import('src/pages/Shelving/Summary/ShelvingBasicData.vue'),
+ },
+ ],
+ },
+ ]
+};
+
diff --git a/src/router/routes.js b/src/router/routes.js
index dc4b51ec2..25d605af8 100644
--- a/src/router/routes.js
+++ b/src/router/routes.js
@@ -7,6 +7,7 @@ import wagon from './modules/wagon';
import supplier from './modules/Supplier';
import route from './modules/route';
import travel from './modules/travel';
+import shelving from 'src/router/modules/shelving';
const routes = [
{
@@ -50,6 +51,7 @@ const routes = [
ticket,
claim,
worker,
+ shelving,
invoiceOut,
wagon,
route,
diff --git a/src/stores/useNavigationStore.js b/src/stores/useNavigationStore.js
index 9933924e0..b4882c685 100644
--- a/src/stores/useNavigationStore.js
+++ b/src/stores/useNavigationStore.js
@@ -12,6 +12,7 @@ export const useNavigationStore = defineStore('navigationStore', () => {
'ticket',
'invoiceOut',
'worker',
+ 'shelving',
'wagon',
'route',
'supplier',