From f404243d63be8fdc5d34efa4c27f0ce827bf5fd2 Mon Sep 17 00:00:00 2001 From: pablone Date: Wed, 3 Apr 2024 08:38:26 +0200 Subject: [PATCH 01/56] feat(route): refs # agency add agencyList --- src/i18n/en/index.js | 1 + src/i18n/es/index.js | 1 + src/pages/Route/Agency/AgencyList.vue | 39 +++++++++++++++++++++++++++ src/router/modules/route.js | 11 +++++++- 4 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 src/pages/Route/Agency/AgencyList.vue diff --git a/src/i18n/en/index.js b/src/i18n/en/index.js index 9e0ad7c9b..a91f9586b 100644 --- a/src/i18n/en/index.js +++ b/src/i18n/en/index.js @@ -937,6 +937,7 @@ export default { pageTitles: { routes: 'Routes', cmrsList: 'External CMRs list', + agencyList: 'Agency', RouteList: 'List', create: 'Create', basicData: 'Basic Data', diff --git a/src/i18n/es/index.js b/src/i18n/es/index.js index 6083dfad7..3b664a8e4 100644 --- a/src/i18n/es/index.js +++ b/src/i18n/es/index.js @@ -937,6 +937,7 @@ export default { pageTitles: { routes: 'Rutas', cmrsList: 'Listado de CMRs externos', + agency: 'Agency', RouteList: 'Listado', create: 'Crear', basicData: 'Datos básicos', diff --git a/src/pages/Route/Agency/AgencyList.vue b/src/pages/Route/Agency/AgencyList.vue new file mode 100644 index 000000000..ca5197986 --- /dev/null +++ b/src/pages/Route/Agency/AgencyList.vue @@ -0,0 +1,39 @@ + + + diff --git a/src/router/modules/route.js b/src/router/modules/route.js index 614345913..4031e74bf 100644 --- a/src/router/modules/route.js +++ b/src/router/modules/route.js @@ -10,7 +10,7 @@ export default { component: RouterView, redirect: { name: 'RouteMain' }, menus: { - main: ['RouteList', 'CmrList'], + main: ['RouteList', 'CmrList', 'agencyList'], card: ['RouteBasicData'], }, children: [ @@ -29,6 +29,15 @@ export default { }, component: () => import('src/pages/Route/Cmr/CmrList.vue'), }, + { + path: 'agency', + name: 'agencyList', + meta: { + title: 'agencyList', + icon: 'package', + }, + component: () => import('src/pages/Route/Agency/AgencyList.vue'), + }, { path: 'list', name: 'RouteList', From cd49ebe7a66790e039baaa4b9280d0aa3f9b6d3f Mon Sep 17 00:00:00 2001 From: jcasado Date: Wed, 3 Apr 2024 12:54:14 +0200 Subject: [PATCH 02/56] refs #6697 fix claimQuantity --- src/pages/Claim/Card/ClaimLines.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pages/Claim/Card/ClaimLines.vue b/src/pages/Claim/Card/ClaimLines.vue index 70c257c69..4a1d9c9d0 100644 --- a/src/pages/Claim/Card/ClaimLines.vue +++ b/src/pages/Claim/Card/ClaimLines.vue @@ -20,7 +20,7 @@ const { t } = useI18n(); const stateStore = useStateStore(); const arrayData = useArrayData('ClaimLines'); const store = arrayData.store; - +let claimedDefault = 0; const claimFilter = { fields: ['ticketFk'], }; @@ -79,6 +79,7 @@ const columns = computed(() => [ label: t('Claimed'), field: (row) => row.quantity, sortable: true, + default: 0, }, { name: 'description', From fb6a2c809789eb74f23bdb2f62d0d90be6bc1753 Mon Sep 17 00:00:00 2001 From: pablone Date: Wed, 3 Apr 2024 14:59:51 +0200 Subject: [PATCH 03/56] feat: refs #4988 add agencyList and searchBar --- src/i18n/en/index.js | 1 + src/i18n/es/index.js | 3 +- src/pages/Agency/AgencyList.vue | 92 +++++++++++++++++++++++++++ src/pages/Agency/Card/AgencyCard.vue | 39 ++++++++++++ src/pages/Route/Agency/AgencyList.vue | 39 ------------ src/router/modules/agency.js | 54 ++++++++++++++++ src/router/modules/route.js | 26 +++++--- 7 files changed, 204 insertions(+), 50 deletions(-) create mode 100644 src/pages/Agency/AgencyList.vue create mode 100644 src/pages/Agency/Card/AgencyCard.vue delete mode 100644 src/pages/Route/Agency/AgencyList.vue create mode 100644 src/router/modules/agency.js diff --git a/src/i18n/en/index.js b/src/i18n/en/index.js index 054668042..9d0488cab 100644 --- a/src/i18n/en/index.js +++ b/src/i18n/en/index.js @@ -91,6 +91,7 @@ export default { basicData: 'Basic data', log: 'Logs', parkingList: 'Parkings list', + agencyList: 'Agencies list', }, }, errors: { diff --git a/src/i18n/es/index.js b/src/i18n/es/index.js index 099f97938..478c93467 100644 --- a/src/i18n/es/index.js +++ b/src/i18n/es/index.js @@ -91,6 +91,7 @@ export default { basicData: 'Datos básicos', log: 'Historial', parkingList: 'Listado de parkings', + agencyList: 'Listado de agencias', }, }, errors: { @@ -992,7 +993,7 @@ export default { routes: 'Rutas', cmrsList: 'Listado de CMRs externos', agency: 'Agency', - RouteList: 'Listado', + RouteList: 'Listado de rutas', create: 'Crear', basicData: 'Datos básicos', summary: 'Resumen', diff --git a/src/pages/Agency/AgencyList.vue b/src/pages/Agency/AgencyList.vue new file mode 100644 index 000000000..2746f8529 --- /dev/null +++ b/src/pages/Agency/AgencyList.vue @@ -0,0 +1,92 @@ + + + + es: + isOwn: Tiene propietario + isAnyVolumeAllowed: Permite cualquier volumen + Search agency: Buscar agencia + You can search by name: Puedes buscar por nombre + en: + isOwn: Has owner + isAnyVolumeAllowed: Allows any volume + diff --git a/src/pages/Agency/Card/AgencyCard.vue b/src/pages/Agency/Card/AgencyCard.vue new file mode 100644 index 000000000..1c7e3cc10 --- /dev/null +++ b/src/pages/Agency/Card/AgencyCard.vue @@ -0,0 +1,39 @@ + + diff --git a/src/pages/Route/Agency/AgencyList.vue b/src/pages/Route/Agency/AgencyList.vue deleted file mode 100644 index ca5197986..000000000 --- a/src/pages/Route/Agency/AgencyList.vue +++ /dev/null @@ -1,39 +0,0 @@ - - - diff --git a/src/router/modules/agency.js b/src/router/modules/agency.js new file mode 100644 index 000000000..42b139b95 --- /dev/null +++ b/src/router/modules/agency.js @@ -0,0 +1,54 @@ +import { RouterView } from 'vue-router'; + +export default { + path: '/agency', + name: 'Agency', + meta: { + title: 'agency', + icon: 'garage_home', + moduleName: 'Agency', + }, + component: RouterView, + redirect: { name: 'AgencyCard' }, + menus: { + main: [], + card: ['AgencyBasicData', 'AgencyLog'], + }, + children: [ + { + path: '/agency/:id', + name: 'AgencyCard', + component: () => import('src/pages/Agency/Card/AgencyCard.vue'), + redirect: { name: 'AgencySummary' }, + children: [ + { + name: 'AgencySummary', + path: 'summary', + meta: { + title: 'summary', + icon: 'view_list', + }, + component: () => import('src/pages/Agency/Card/AgencySummary.vue'), + }, + { + name: 'AgencyBasicData', + path: 'basic-data', + meta: { + title: 'basicData', + icon: 'vn:settings', + }, + component: () => import('pages/Agency/Card/AgencyBasicData.vue'), + }, + { + name: 'AgencyLog', + path: 'log', + meta: { + title: 'log', + icon: 'history', + }, + component: () => import('src/pages/Agency/Card/AgencyLog.vue'), + }, + ], + }, + ], +}; diff --git a/src/router/modules/route.js b/src/router/modules/route.js index 1e392fa0f..cfa8c9c35 100644 --- a/src/router/modules/route.js +++ b/src/router/modules/route.js @@ -11,7 +11,7 @@ export default { component: RouterView, redirect: { name: 'RouteMain' }, menus: { - main: ['RouteList', 'RouteAutonomous', 'RouteRoadmap', 'CmrList', 'agencyList'], + main: ['RouteList', 'RouteAutonomous', 'RouteRoadmap', 'CmrList', 'AgencyList'], card: ['RouteBasicData', 'RouteTickets', 'RouteLog'], }, children: [ @@ -21,15 +21,6 @@ export default { component: () => import('src/pages/Route/RouteMain.vue'), redirect: { name: 'RouteList' }, children: [ - { - path: 'agency', - name: 'agencyList', - meta: { - title: 'agencyList', - icon: 'package', - }, - component: () => import('src/pages/Route/Agency/AgencyList.vue'), - }, { path: 'list', name: 'RouteList', @@ -83,6 +74,21 @@ export default { }, component: () => import('src/pages/Route/Cmr/CmrList.vue'), }, + { + path: '/agency', + redirect: { name: 'agencyList' }, + children: [ + { + path: 'list', + name: 'AgencyList', + meta: { + title: 'agencyList', + icon: 'view_list', + }, + component: () => import('src/pages/Agency/AgencyList.vue'), + }, + ], + }, ], }, { From 4a0ae8aa45ca5ab0f5ad448a7f9bae64bb166623 Mon Sep 17 00:00:00 2001 From: wbuezas Date: Wed, 10 Apr 2024 17:18:57 -0300 Subject: [PATCH 04/56] Item summary --- src/i18n/en/index.js | 41 +++- src/i18n/es/index.js | 35 +++ src/pages/Item/Card/ItemBarcode.vue | 1 + src/pages/Item/Card/ItemBasicData.vue | 1 + src/pages/Item/Card/ItemBotanical.vue | 1 + src/pages/Item/Card/ItemDescriptor.vue | 108 +-------- src/pages/Item/Card/ItemDescriptorImage.vue | 159 ++++++++++++++ src/pages/Item/Card/ItemSummary.vue | 232 +++++++++++++++++++- src/pages/Item/Card/ItemTax.vue | 1 + src/pages/Item/ItemList.vue | 2 +- src/router/modules/item.js | 64 +++++- 11 files changed, 529 insertions(+), 116 deletions(-) create mode 100644 src/pages/Item/Card/ItemBarcode.vue create mode 100644 src/pages/Item/Card/ItemBasicData.vue create mode 100644 src/pages/Item/Card/ItemBotanical.vue create mode 100644 src/pages/Item/Card/ItemDescriptorImage.vue create mode 100644 src/pages/Item/Card/ItemTax.vue diff --git a/src/i18n/en/index.js b/src/i18n/en/index.js index cd61d46ff..c4affad71 100644 --- a/src/i18n/en/index.js +++ b/src/i18n/en/index.js @@ -1213,9 +1213,13 @@ export default { pageTitles: { items: 'Items', list: 'List', - diary: 'Diary', - tags: 'Tags', - create: 'Create', + diary: 'Histórico', + tags: 'Etiquetas', + create: 'Crear', + basicData: 'Datos básicos', + tax: 'IVA', + botanical: 'Botánico', + barcode: 'Código de barras', }, descriptor: { item: 'Item', @@ -1246,6 +1250,37 @@ export default { producer: 'Producer', landed: 'Landed', }, + summary: { + basicData: 'Datos básicos', + otherData: 'Otros datos', + description: 'Descripción', + tax: 'IVA', + tags: 'Etiquetas', + botanical: 'Botánico', + barcode: 'Código de barras', + name: 'Nombre', + completeName: 'Nombre completo', + family: 'Familia', + size: 'Medida', + origin: 'Origen', + stems: 'Tallos', + multiplier: 'Multiplicador', + buyer: 'Comprador', + doPhoto: 'Hacer foto', + intrastatCode: 'Código intrastat', + intrastat: 'Intrastat', + ref: 'Referencia', + relevance: 'Relevancia', + weight: 'Peso (gramos)/tallo', + units: 'Unidades/caja', + expense: 'Gasto', + generic: 'Genérico', + recycledPlastic: 'Plástico reciclado', + nonRecycledPlastic: 'Plástico no reciclado', + minSalesQuantity: 'Cantidad mínima de venta', + genus: 'Genus', + specie: 'Specie', + }, }, components: { topbar: {}, diff --git a/src/i18n/es/index.js b/src/i18n/es/index.js index 08fb809b2..01263f224 100644 --- a/src/i18n/es/index.js +++ b/src/i18n/es/index.js @@ -1215,6 +1215,10 @@ export default { diary: 'Histórico', tags: 'Etiquetas', create: 'Crear', + basicData: 'Datos básicos', + tax: 'IVA', + botanical: 'Botánico', + barcode: 'Código de barras', }, descriptor: { item: 'Artículo', @@ -1245,6 +1249,37 @@ export default { producer: 'Productor', landed: 'F. entrega', }, + summary: { + basicData: 'Datos básicos', + otherData: 'Otros datos', + description: 'Descripción', + tax: 'IVA', + tags: 'Etiquetas', + botanical: 'Botánico', + barcode: 'Código de barras', + name: 'Nombre', + completeName: 'Nombre completo', + family: 'Familia', + size: 'Medida', + origin: 'Origen', + stems: 'Tallos', + multiplier: 'Multiplicador', + buyer: 'Comprador', + doPhoto: 'Hacer foto', + intrastatCode: 'Código intrastat', + intrastat: 'Intrastat', + ref: 'Referencia', + relevance: 'Relevancia', + weight: 'Peso (gramos)/tallo', + units: 'Unidades/caja', + expense: 'Gasto', + generic: 'Genérico', + recycledPlastic: 'Plástico reciclado', + nonRecycledPlastic: 'Plástico no reciclado', + minSalesQuantity: 'Cantidad mínima de venta', + genus: 'Genus', + specie: 'Specie', + }, }, components: { topbar: {}, diff --git a/src/pages/Item/Card/ItemBarcode.vue b/src/pages/Item/Card/ItemBarcode.vue new file mode 100644 index 000000000..e4366a11b --- /dev/null +++ b/src/pages/Item/Card/ItemBarcode.vue @@ -0,0 +1 @@ + diff --git a/src/pages/Item/Card/ItemBasicData.vue b/src/pages/Item/Card/ItemBasicData.vue new file mode 100644 index 000000000..334cf049d --- /dev/null +++ b/src/pages/Item/Card/ItemBasicData.vue @@ -0,0 +1 @@ + diff --git a/src/pages/Item/Card/ItemBotanical.vue b/src/pages/Item/Card/ItemBotanical.vue new file mode 100644 index 000000000..a2a39d9df --- /dev/null +++ b/src/pages/Item/Card/ItemBotanical.vue @@ -0,0 +1 @@ + diff --git a/src/pages/Item/Card/ItemDescriptor.vue b/src/pages/Item/Card/ItemDescriptor.vue index 981de0632..59ac9adf9 100644 --- a/src/pages/Item/Card/ItemDescriptor.vue +++ b/src/pages/Item/Card/ItemDescriptor.vue @@ -9,7 +9,7 @@ import VnLv from 'src/components/ui/VnLv.vue'; import WorkerDescriptorProxy from 'src/pages/Worker/Card/WorkerDescriptorProxy.vue'; import VnConfirm from 'components/ui/VnConfirm.vue'; import RegularizeStockForm from 'components/RegularizeStockForm.vue'; -import EditPictureForm from 'components/EditPictureForm.vue'; +import ItemDescriptorImage from 'src/pages/Item/Card/ItemDescriptorImage.vue'; import { useState } from 'src/composables/useState'; import useCardDescription from 'src/composables/useCardDescription'; @@ -50,12 +50,10 @@ const entityId = computed(() => { }); const image = ref(null); const regularizeStockFormDialog = ref(null); -const editPhotoFormDialog = ref(null); const item = ref(null); const available = ref(null); const visible = ref(null); const _warehouseFk = ref(null); -const warehouseText = ref(null); const salixUrl = ref(); const warehouseFk = computed({ get() { @@ -63,14 +61,9 @@ const warehouseFk = computed({ }, set(val) { _warehouseFk.value = val; - if (val) { - updateStock(); - getWarehouseName(val); - } + if (val) updateStock(); }, }); -const showWarehouseIconTooltip = ref(true); -const showEditPhotoForm = ref(false); onMounted(async () => { await getItemAvatar(); @@ -90,26 +83,6 @@ const setData = (entity) => { data.value = useCardDescription(entity.name, entity.id); }; -const getWarehouseName = async (warehouseFk) => { - try { - showWarehouseIconTooltip.value = false; - - const filter = { - where: { id: warehouseFk }, - }; - - const { data } = await axios.get('Warehouses/findOne', { filter }); - - warehouseText.value = t('item.descriptor.warehouseText', { - warehouseName: data.name, - }); - - showWarehouseIconTooltip.value = true; - } catch (err) { - console.error('Error finding warehouse'); - } -}; - const updateStock = async () => { try { available.value = null; @@ -135,10 +108,6 @@ const openRegularizeStockForm = () => { regularizeStockFormDialog.value.show(); }; -const toggleEditPictureForm = () => { - showEditPhotoForm.value = !showEditPhotoForm.value; -}; - const cloneItem = async () => { try { const { data } = await axios.post(`Items/${entityId.value}/clone`); @@ -198,74 +167,11 @@ const openCloneDialog = async () => { - +es: + Discard: Descartar diff --git a/src/pages/Item/ItemRequestDenyForm.vue b/src/pages/Item/ItemRequestDenyForm.vue new file mode 100644 index 000000000..f26edb845 --- /dev/null +++ b/src/pages/Item/ItemRequestDenyForm.vue @@ -0,0 +1,57 @@ + + + + + +es: + Specify the reasons to deny this request: Especifica las razones para descartar la petición + From ee80b1d617e1835a1a04760f0fd4fa9435a81457 Mon Sep 17 00:00:00 2001 From: carlossa Date: Fri, 12 Apr 2024 14:34:11 +0200 Subject: [PATCH 08/56] refs #6976 changes table --- .../Supplier/Card/SupplierConsumption.vue | 24 +++++++++++-------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/src/pages/Supplier/Card/SupplierConsumption.vue b/src/pages/Supplier/Card/SupplierConsumption.vue index 18d163d52..e7cbca8b1 100644 --- a/src/pages/Supplier/Card/SupplierConsumption.vue +++ b/src/pages/Supplier/Card/SupplierConsumption.vue @@ -162,16 +162,20 @@ console.log('dateRange From', dateRanges.value.from); >