From f404243d63be8fdc5d34efa4c27f0ce827bf5fd2 Mon Sep 17 00:00:00 2001 From: pablone Date: Wed, 3 Apr 2024 08:38:26 +0200 Subject: [PATCH 01/32] 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 fb6a2c809789eb74f23bdb2f62d0d90be6bc1753 Mon Sep 17 00:00:00 2001 From: pablone Date: Wed, 3 Apr 2024 14:59:51 +0200 Subject: [PATCH 02/32] 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 ad8007fe6b00c473b7f21fc4f18af3062397a19b Mon Sep 17 00:00:00 2001 From: jcasado Date: Thu, 11 Apr 2024 13:42:37 +0200 Subject: [PATCH 03/32] refs #6641 add checkbox --- src/pages/Claim/ClaimFilter.vue | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/pages/Claim/ClaimFilter.vue b/src/pages/Claim/ClaimFilter.vue index ee702ffdd..ef14811d1 100644 --- a/src/pages/Claim/ClaimFilter.vue +++ b/src/pages/Claim/ClaimFilter.vue @@ -149,6 +149,15 @@ const states = ref(); /> + + + + + + + + + + + + + +en: + params: + search: General search + categoryFk: Category + typeFk: Type + buyerFk: Buyer + supplierFk: Supplier + tags: Tags + tag: Tag + value: Value +es: + params: + search: Búsqueda general + categoryFk: Reino + typeFk: Tipo + buyerFk: Comprador + supplierFk: Proveedor + tags: Etiquetas + tag: Etiqueta + value: Valor + From f3b5bf7f4b1847286738ce6225ec4b70c5fba628 Mon Sep 17 00:00:00 2001 From: wbuezas Date: Tue, 23 Apr 2024 15:34:52 -0300 Subject: [PATCH 08/32] Item list filter --- src/composables/useArrayData.js | 7 +- src/pages/Item/ItemList.vue | 2 +- src/pages/Item/ItemListFilter.vue | 230 +++++++++++++++++++++--------- src/router/modules/item.js | 1 + 4 files changed, 171 insertions(+), 69 deletions(-) diff --git a/src/composables/useArrayData.js b/src/composables/useArrayData.js index 998ee0576..04d7bfef7 100644 --- a/src/composables/useArrayData.js +++ b/src/composables/useArrayData.js @@ -156,9 +156,10 @@ export function useArrayData(key, userOptions) { delete store.userParams[param]; delete params[param]; if (store.filter?.where) { - delete store.filter.where[ - Object.keys(exprBuilder ? exprBuilder(param) : param)[0] - ]; + const key = Object.keys( + exprBuilder && exprBuilder(param) ? exprBuilder(param) : param + ); + if (key[0]) delete store.filter.where[key[0]]; if (Object.keys(store.filter.where).length === 0) { delete store.filter.where; } diff --git a/src/pages/Item/ItemList.vue b/src/pages/Item/ItemList.vue index 9c1ab9df6..3b3697612 100644 --- a/src/pages/Item/ItemList.vue +++ b/src/pages/Item/ItemList.vue @@ -70,7 +70,7 @@ const exprBuilder = (param, value) => { } }; -const params = reactive({}); +const params = reactive({ isFloramondo: false, isActive: true }); const applyColumnFilter = async (col) => { try { diff --git a/src/pages/Item/ItemListFilter.vue b/src/pages/Item/ItemListFilter.vue index a99811e2f..ad6167014 100644 --- a/src/pages/Item/ItemListFilter.vue +++ b/src/pages/Item/ItemListFilter.vue @@ -4,13 +4,14 @@ import { useI18n } from 'vue-i18n'; import { onMounted } from 'vue'; import { useStateStore } from 'stores/useStateStore'; +import FetchData from 'components/FetchData.vue'; import VnFilterPanel from 'src/components/ui/VnFilterPanel.vue'; import VnSelectFilter from 'src/components/common/VnSelectFilter.vue'; import VnInput from 'src/components/common/VnInput.vue'; -import FetchData from 'components/FetchData.vue'; -import VnInputDate from 'src/components/common/VnInputDate.vue'; +import { QCheckbox } from 'quasar'; import { useArrayData } from 'composables/useArrayData'; +import { useValidator } from 'src/composables/useValidator'; import axios from 'axios'; const { t } = useI18n(); @@ -23,6 +24,7 @@ const props = defineProps({ }); const stateStore = useStateStore(); +const validationsStore = useValidator(); const itemTypesRef = ref(null); const categoriesOptions = ref([]); @@ -30,19 +32,27 @@ const itemTypesOptions = ref([]); const buyersOptions = ref([]); const suppliersOptions = ref([]); const tagValues = ref([]); +const fieldFiltersValues = ref([]); +const moreFields = ref([]); const arrayData = useArrayData(props.dataKey); -const itemTypesFilter = computed(() => { - return { - fields: ['id', 'name', 'categoryFk'], - include: 'category', - order: 'name ASC', - where: { categoryFk: arrayData.store?.userParams?.categoryFk }, - }; -}); +const itemTypesFilter = { + fields: ['id', 'name', 'categoryFk'], + include: 'category', + order: 'name ASC', + where: {}, +}; -// TODO: checkear este watch que fetchee cuando cambie categoryFk -watch(itemTypesFilter.value.where.categoryFk, () => itemTypesRef.value.fetch()); +const onCategoryChange = async (categoryFk, search) => { + if (!categoryFk) { + itemTypesFilter.where.categoryFk = null; + delete itemTypesFilter.where.categoryFk; + } else { + itemTypesFilter.where.categoryFk = categoryFk; + } + search(); + await itemTypesRef.value.fetch(); +}; const getSelectedTagValues = async (tag) => { try { @@ -62,45 +72,60 @@ const getSelectedTagValues = async (tag) => { } }; -// const applyColumnFilter = async (col) => { -// try { -// params[col.field] = col.columnFilter.filterValue; -// await arrayData.addFilter({ params }); -// } catch (err) { -// console.error('Error applying column filter', err); -// } -// }; - -const applyTags = () => { - // params.tags = tagValues.value - // .filter((tag) => tag.selectedTag && tag.value) - // .map((tag) => ({ - // tagFk: tag.selectedTag.id, - // tagName: tag.selectedTag.name, - // value: tag.value, - // })); - console.log('apply tags'); - const params = { - tags: tagValues.value - .filter((tag) => tag.selectedTag && tag.value) - .map((tag) => ({ - tagFk: tag.selectedTag.id, - tagName: tag.selectedTag.name, - value: tag.value, - })), - }; - console.log('params:: ', params); - arrayData.addFilter({ params }); - // search(); +const applyTags = (params, search) => { + params.tags = tagValues.value + .filter((tag) => tag.selectedTag && tag.value) + .map((tag) => ({ + tagFk: tag.selectedTag.id, + tagName: tag.selectedTag.name, + value: tag.value, + })); + search(); }; const removeTag = (index, params, search) => { (tagValues.value || []).splice(index, 1); - // applyTags(params, search); + applyTags(params, search); +}; + +const applyFieldFilters = (params) => { + fieldFiltersValues.value.forEach((fieldFilter) => { + if ( + fieldFilter.selectedField && + (fieldFilter.value !== null || + fieldFilter.value !== '' || + fieldFilter.value !== undefined) + ) { + params[fieldFilter.name] = fieldFilter.value; + } + }); + arrayData.applyFilter({ params }); +}; + +const removeFieldFilter = (index, params, search) => { + delete params[fieldFiltersValues.value[index].name]; + (fieldFiltersValues.value || []).splice(index, 1); + applyFieldFilters(params, search); }; onMounted(async () => { stateStore.rightDrawer = true; + if (arrayData.store?.userParams?.categoryFk) + itemTypesFilter.where.categoryFk = arrayData.store?.userParams?.categoryFk; + await itemTypesRef.value.fetch(); + const { models } = validationsStore; + const properties = models.Item?.properties || {}; + + const _moreFields = ['id', 'description', 'name', 'isActive']; + + _moreFields.forEach((field) => { + let prop = properties[field]; + moreFields.value.push({ + name: field, + label: prop ? prop.description : field, + type: prop ? prop.type : null, + }); + }); }); @@ -116,7 +141,6 @@ onMounted(async () => { url="ItemTypes" :filter="itemTypesFilter" @on-fetch="(data) => (itemTypesOptions = data)" - auto-load /> { /> @@ -136,16 +160,16 @@ onMounted(async () => { auto-load @on-fetch="(data) => (tagOptions = data)" /> - - - +
{{ itemTypesFilter }}
+ @@ -335,7 +424,13 @@ en: tags: Tags tag: Tag value: Value + isFloramondo: Floramondo + isActive: Active + description: Description + name: Name + id: ID es: + More fields: Más campos params: search: Búsqueda general categoryFk: Reino @@ -345,4 +440,9 @@ es: tags: Etiquetas tag: Etiqueta value: Valor + isFloramondo: Floramondo + isActive: Activo + description: Descripción + name: Nombre + id: ID diff --git a/src/router/modules/item.js b/src/router/modules/item.js index 41f3ec92a..a9e7090b3 100644 --- a/src/router/modules/item.js +++ b/src/router/modules/item.js @@ -6,6 +6,7 @@ export default { meta: { title: 'items', icon: 'vn:item', + moduleName: 'Item', }, component: RouterView, redirect: { name: 'ItemMain' }, From a6ebe9cf19f2ddd6c05649b8096ad93367c18aae Mon Sep 17 00:00:00 2001 From: wbuezas Date: Wed, 24 Apr 2024 12:54:38 -0300 Subject: [PATCH 09/32] Item barcode --- src/css/app.scss | 5 ++ src/i18n/locale/en.yml | 1 + src/i18n/locale/es.yml | 1 + src/pages/Item/Card/ItemBarcode.vue | 80 +++++++++++++++++++++++++++++ src/router/modules/item.js | 12 ++++- 5 files changed, 98 insertions(+), 1 deletion(-) create mode 100644 src/pages/Item/Card/ItemBarcode.vue diff --git a/src/css/app.scss b/src/css/app.scss index 25b484649..9037802ad 100644 --- a/src/css/app.scss +++ b/src/css/app.scss @@ -119,6 +119,11 @@ select:-webkit-autofill { font-variation-settings: 'FILL' 1; } +.fill-icon-on-hover:hover { + font-variation-settings: 'FILL' 1; + cursor: pointer; +} + .vn-table-separation-row { height: 16px !important; background-color: var(--vn-section-color) !important; diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml index 3ac3d18a0..338dff60b 100644 --- a/src/i18n/locale/en.yml +++ b/src/i18n/locale/en.yml @@ -1119,6 +1119,7 @@ item: tags: Tags wasteBreakdown: Waste breakdown itemCreate: New item + barcode: Barcode descriptor: item: Item buyer: Buyer diff --git a/src/i18n/locale/es.yml b/src/i18n/locale/es.yml index 4ecbcdbc0..7e9c5f669 100644 --- a/src/i18n/locale/es.yml +++ b/src/i18n/locale/es.yml @@ -1118,6 +1118,7 @@ item: tags: Etiquetas wasteBreakdown: Deglose de mermas itemCreate: Nuevo artículo + barcode: Códigos de barras descriptor: item: Artículo buyer: Comprador diff --git a/src/pages/Item/Card/ItemBarcode.vue b/src/pages/Item/Card/ItemBarcode.vue new file mode 100644 index 000000000..6a13a9ea7 --- /dev/null +++ b/src/pages/Item/Card/ItemBarcode.vue @@ -0,0 +1,80 @@ + + + + +es: + Code: Código + Remove barcode: Quitar código de barras + Add barcode: Añadir código de barras + diff --git a/src/router/modules/item.js b/src/router/modules/item.js index 41f3ec92a..35abbb5c7 100644 --- a/src/router/modules/item.js +++ b/src/router/modules/item.js @@ -6,12 +6,13 @@ export default { meta: { title: 'items', icon: 'vn:item', + moduleName: 'Item', }, component: RouterView, redirect: { name: 'ItemMain' }, menus: { main: ['ItemList', 'WasteBreakdown'], - card: ['ItemBasicData'], + card: ['ItemBasicData', 'ItemBarcode'], }, children: [ { @@ -94,6 +95,15 @@ export default { }, component: () => import('src/pages/Item/Card/ItemBasicData.vue'), }, + { + path: 'barcode', + name: 'ItemBarcode', + meta: { + title: 'barcode', + icon: 'vn:barcode', + }, + component: () => import('src/pages/Item/Card/ItemBarcode.vue'), + }, ], }, ], From 84a9dc831906ab02c253026b22b8073301df3fd6 Mon Sep 17 00:00:00 2001 From: wbuezas Date: Wed, 24 Apr 2024 17:30:53 -0300 Subject: [PATCH 10/32] Fix ItemDescriptor labels --- src/pages/Item/Card/ItemDescriptor.vue | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/src/pages/Item/Card/ItemDescriptor.vue b/src/pages/Item/Card/ItemDescriptor.vue index 981de0632..77b078296 100644 --- a/src/pages/Item/Card/ItemDescriptor.vue +++ b/src/pages/Item/Card/ItemDescriptor.vue @@ -271,14 +271,27 @@ const openCloneDialog = async () => { - - - + + + + - diff --git a/src/pages/Agency/Card/AgencyDescriptor.vue b/src/pages/Agency/Card/AgencyDescriptor.vue index 311f5d3a5..0fa89d07d 100644 --- a/src/pages/Agency/Card/AgencyDescriptor.vue +++ b/src/pages/Agency/Card/AgencyDescriptor.vue @@ -19,7 +19,6 @@ const { params } = useRoute(); const entityId = computed(() => props.id || params.id); const { store } = useArrayData('Parking'); const card = computed(() => store.data); -console.log('card: ', card); - + @@ -246,7 +246,7 @@ const removeTag = (index, params, search) => { class="q-mt-md filter-value" > - { /> - [ name: 'warehouse', ...defaultColumnAttrs, columnFilter: { - component: VnSelectFilter, + component: VnSelect, type: 'select', filterValue: null, event: getColumnInputEvents, @@ -434,7 +434,7 @@ onUnmounted(() => (stateStore.rightDrawer = false)); - + - + @@ -261,7 +261,7 @@ const decrement = (paramsObj, key) => { - Date: Fri, 26 Apr 2024 09:02:51 +0200 Subject: [PATCH 24/32] fix: minor changes --- src/i18n/locale/en.yml | 2 ++ src/pages/Item/Card/ItemBotanical.vue | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/i18n/locale/en.yml b/src/i18n/locale/en.yml index a07e35f30..68f1b3db3 100644 --- a/src/i18n/locale/en.yml +++ b/src/i18n/locale/en.yml @@ -1126,6 +1126,8 @@ item: wasteBreakdown: Waste breakdown itemCreate: New item log: Log + tax: Tax + barcode: Barcode botanical: Botanical descriptor: item: Item diff --git a/src/pages/Item/Card/ItemBotanical.vue b/src/pages/Item/Card/ItemBotanical.vue index 0a28b05b8..0dd1d1a19 100644 --- a/src/pages/Item/Card/ItemBotanical.vue +++ b/src/pages/Item/Card/ItemBotanical.vue @@ -107,5 +107,5 @@ onMounted(async () => { es: Genus: Genus - Species: Especies + Species: Especie From 36e99e2c6cc267c146dff230184ea9c62d5c8658 Mon Sep 17 00:00:00 2001 From: Javier Segarra Date: Fri, 26 Apr 2024 09:28:32 +0200 Subject: [PATCH 25/32] fix: bug when save --- src/pages/Item/Card/ItemBotanical.vue | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/pages/Item/Card/ItemBotanical.vue b/src/pages/Item/Card/ItemBotanical.vue index 0dd1d1a19..15492de9f 100644 --- a/src/pages/Item/Card/ItemBotanical.vue +++ b/src/pages/Item/Card/ItemBotanical.vue @@ -1,5 +1,5 @@ @@ -31,7 +44,7 @@ onMounted(() => { url="ItemBarcodes" > - + - { - { - + @@ -287,7 +289,7 @@ onMounted(async () => { class="row items-center" > - { /> - { class="row items-center" > - From ad085974dac83e25e0ef7edc82ef54e91d2c9e55 Mon Sep 17 00:00:00 2001 From: wbuezas Date: Fri, 26 Apr 2024 13:51:20 -0300 Subject: [PATCH 29/32] remove console.log --- src/pages/Item/ItemListFilter.vue | 1 - 1 file changed, 1 deletion(-) diff --git a/src/pages/Item/ItemListFilter.vue b/src/pages/Item/ItemListFilter.vue index 49aeac29f..f383a1e18 100644 --- a/src/pages/Item/ItemListFilter.vue +++ b/src/pages/Item/ItemListFilter.vue @@ -119,7 +119,6 @@ onMounted(async () => { const _moreFields = ['id', 'description', 'name', 'isActive']; _moreFields.forEach((field) => { - console.log(field); let prop = properties[field]; const label = t(`params.${field}`); moreFields.value.push({ From 4282463e51e8f140be44d5549297ad62ada548a7 Mon Sep 17 00:00:00 2001 From: wbuezas Date: Fri, 26 Apr 2024 14:29:11 -0300 Subject: [PATCH 30/32] Fill filter fields with user params --- src/pages/Item/ItemListFilter.vue | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/pages/Item/ItemListFilter.vue b/src/pages/Item/ItemListFilter.vue index f383a1e18..2e89cdbcf 100644 --- a/src/pages/Item/ItemListFilter.vue +++ b/src/pages/Item/ItemListFilter.vue @@ -127,6 +127,17 @@ onMounted(async () => { type: prop ? prop.type : null, }); }); + + // Fill fieldFiltersValues with existent userParams + if (arrayData.store?.userParams) { + fieldFiltersValues.value = Object.entries(arrayData.store?.userParams) + .filter(([key, value]) => value && _moreFields.includes(key)) + .map(([key, value]) => ({ + name: key, + value, + selectedField: moreFields.value.find((field) => field.name === key), + })); + } }); From ce55109dd31dd19dd579b74391c35f9b1d0cca30 Mon Sep 17 00:00:00 2001 From: wbuezas Date: Fri, 26 Apr 2024 15:41:03 -0300 Subject: [PATCH 31/32] fix more fields label when selected --- src/pages/Item/ItemListFilter.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/pages/Item/ItemListFilter.vue b/src/pages/Item/ItemListFilter.vue index 2e89cdbcf..98bc74b20 100644 --- a/src/pages/Item/ItemListFilter.vue +++ b/src/pages/Item/ItemListFilter.vue @@ -369,7 +369,7 @@ onMounted(async () => { Date: Fri, 26 Apr 2024 21:05:45 +0200 Subject: [PATCH 32/32] fix: reset fieldFilter.value when change model --- src/pages/Item/ItemListFilter.vue | 1 + 1 file changed, 1 insertion(+) diff --git a/src/pages/Item/ItemListFilter.vue b/src/pages/Item/ItemListFilter.vue index 98bc74b20..a51f9ebb4 100644 --- a/src/pages/Item/ItemListFilter.vue +++ b/src/pages/Item/ItemListFilter.vue @@ -381,6 +381,7 @@ onMounted(async () => { @update:model-value=" ($event) => { fieldFilter.name = $event.name; + fieldFilter.value = null; fieldFilter.selectedField = $event; } "