From dbdccc477437506ad4b1ad39fa3b3ba0a1e4dc00 Mon Sep 17 00:00:00 2001 From: jtubau Date: Fri, 28 Mar 2025 08:56:26 +0100 Subject: [PATCH] refactor: refs #8422 improve error handling and notifications in DMS components --- cypress.config.js | 2 +- src/components/common/VnDms.vue | 6 ++++-- src/components/common/VnDmsList.vue | 14 ++++++++++---- 3 files changed, 15 insertions(+), 7 deletions(-) diff --git a/cypress.config.js b/cypress.config.js index cf9289fdc1..7458c0b05b 100644 --- a/cypress.config.js +++ b/cypress.config.js @@ -44,7 +44,7 @@ export default defineConfig({ supportFile: 'test/cypress/support/index.js', videosFolder: 'test/cypress/videos', downloadsFolder: 'test/cypress/downloads', - tmpUploadFolder: '../salix/storage/tmp/dms', + tmpUploadFolder: 'test/cypress/storage/tmp/dms', video: false, specPattern: 'test/cypress/integration/**/*.spec.js', experimentalRunAllSpecs: true, diff --git a/src/components/common/VnDms.vue b/src/components/common/VnDms.vue index 8553a92b6b..76a0c19563 100644 --- a/src/components/common/VnDms.vue +++ b/src/components/common/VnDms.vue @@ -89,7 +89,7 @@ async function save() { delete dms.value.files; return response; } catch (e) { - throw new Error(e.message); + notify(t('errorDmsSave'), 'negative'); } } @@ -210,12 +210,14 @@ function addDefaultData(data) { } -en: +en: + errorDmsSave: Error saving the dms contentTypesInfo: Allowed file types {allowedContentTypes} EntryDmsDescription: Reference {reference} WorkersDescription: Working of employee id {reference} SupplierDmsDescription: Reference {reference} es: + errorDmsSave: Error al guardar el dms Generate identifier for original file: Generar identificador para archivo original contentTypesInfo: Tipos de archivo permitidos {allowedContentTypes} EntryDmsDescription: Referencia {reference} diff --git a/src/components/common/VnDmsList.vue b/src/components/common/VnDmsList.vue index d1d40ac51c..2d0b1f7336 100644 --- a/src/components/common/VnDmsList.vue +++ b/src/components/common/VnDmsList.vue @@ -259,10 +259,14 @@ function deleteDms(dmsFk) { }, }) .onOk(async () => { - await axios.post(`${$props.deleteModel ?? $props.model}/${dmsFk}/removeFile`); - const index = rows.value.findIndex((row) => row.id == dmsFk); - rows.value.splice(index, 1); - notify(t('globals.dataDeleted'), 'positive'); + try{ + await axios.post(`${$props.deleteModel ?? $props.model}/${dmsFk}/removeFile`); + const index = rows.value.findIndex((row) => row.id == dmsFk); + rows.value.splice(index, 1); + notify(t('globals.dataDeleted'), 'positive'); + } catch (e) { + notify(t('errorDmsDelete'), 'negative'); + } }); } @@ -431,9 +435,11 @@ defineExpose({ en: + errorDmsDelete: Error deleting the dms contentTypesInfo: Allowed file types {allowedContentTypes} The documentation is available in paper form: The documentation is available in paper form es: + errorDmsSave: Error al eliminar el dms contentTypesInfo: Tipos de archivo permitidos {allowedContentTypes} Generate identifier for original file: Generar identificador para archivo original Upload file: Subir fichero