From e1941a4ac0607eda3f0ea7b92882c54756d4efbe Mon Sep 17 00:00:00 2001 From: well Date: Thu, 26 Sep 2024 20:31:41 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=BD=D0=B0=20=D0=BF=D0=BE=D0=B4=D0=B4=D0=B5=D1=80?= =?UTF-8?q?=D0=B6=D0=B8=D0=B2=D0=B0=D0=B5=D0=BC=D1=8B=D0=B5=20=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D1=8B=20=D0=9F=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=BD=D0=B0=20=D1=80=D0=B0=D0=B7=D1=80=D0=B5=D1=88?= =?UTF-8?q?=D0=B5=D0=BD=D0=BD=D1=8B=D0=B5=20=D1=84=D0=BE=D1=80=D0=BC=D1=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- l2-frontend/src/components/UploadFile.vue | 12 ++++++++++-- l2-frontend/src/components/types-and-forms-file.ts | 6 +++++- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/l2-frontend/src/components/UploadFile.vue b/l2-frontend/src/components/UploadFile.vue index 5c8dd37822..26584b400a 100644 --- a/l2-frontend/src/components/UploadFile.vue +++ b/l2-frontend/src/components/UploadFile.vue @@ -25,11 +25,16 @@ :options="currentFileForms" placeholder="Выберите структуру файла" /> +
+ Такие структуры файла не поддерживаются +
- Такие структуры файла не поддерживаются + Нет разрешенных форм
{ allowedForms.value = result; }; +const noSupportedFileForms = ref(false); + onMounted(async () => { await allowedFormsForOrganization(); currentFileTypes.value = getTypes(props.typesFile); if (props.simpleMode && currentFileTypes.value.length > 0) { selectedType.value = currentFileTypes.value[0].id; } + noSupportedFileForms.value = unsupportedFileForms(selectedType.value, props.formsFile); }); const changeType = () => { diff --git a/l2-frontend/src/components/types-and-forms-file.ts b/l2-frontend/src/components/types-and-forms-file.ts index 92976f2412..733834e38e 100644 --- a/l2-frontend/src/components/types-and-forms-file.ts +++ b/l2-frontend/src/components/types-and-forms-file.ts @@ -48,6 +48,10 @@ export default function typesAndForms() { } return result; }; + const unsupportedFileForms = (type: string, forms: string[]) => { + const result = forms.filter(form => form === fileForms.value[type][form]); + return result.length === 0; + }; const getForms = (type: string, forms: string[] = null, onlyResult = false, allowedForms: string[] = null): formsFile[] => { let result: formsFile[] = []; @@ -65,5 +69,5 @@ export default function typesAndForms() { } return result; }; - return { getTypes, getForms, getFileFilters }; + return { getTypes, getForms, getFileFilters, unsupportedFileForms }; } From 9c8003e65e3243634d2aa36f3f6bb2991c4ad7bc Mon Sep 17 00:00:00 2001 From: well Date: Thu, 26 Sep 2024 20:33:25 +0800 Subject: [PATCH 2/3] fix eslint error --- l2-frontend/src/components/UploadFile.vue | 4 +++- l2-frontend/src/components/types-and-forms-file.ts | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/l2-frontend/src/components/UploadFile.vue b/l2-frontend/src/components/UploadFile.vue index 26584b400a..d4f353e413 100644 --- a/l2-frontend/src/components/UploadFile.vue +++ b/l2-frontend/src/components/UploadFile.vue @@ -95,7 +95,9 @@ import api from '@/api'; import typesAndForms, { formsFile, typesFile } from './types-and-forms-file'; -const { getTypes, getForms, getFileFilters, unsupportedFileForms } = typesAndForms(); +const { + getTypes, getForms, getFileFilters, unsupportedFileForms, +} = typesAndForms(); const store = useStore(); diff --git a/l2-frontend/src/components/types-and-forms-file.ts b/l2-frontend/src/components/types-and-forms-file.ts index 733834e38e..c4ed17c12f 100644 --- a/l2-frontend/src/components/types-and-forms-file.ts +++ b/l2-frontend/src/components/types-and-forms-file.ts @@ -69,5 +69,7 @@ export default function typesAndForms() { } return result; }; - return { getTypes, getForms, getFileFilters, unsupportedFileForms }; + return { + getTypes, getForms, getFileFilters, unsupportedFileForms, + }; } From 43a6d33fbbedb12393d2e6744188a4cd4e187bf6 Mon Sep 17 00:00:00 2001 From: well Date: Thu, 26 Sep 2024 21:12:03 +0800 Subject: [PATCH 3/3] fix --- l2-frontend/src/components/UploadFile.vue | 3 ++- l2-frontend/src/components/types-and-forms-file.ts | 8 +++++++- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/l2-frontend/src/components/UploadFile.vue b/l2-frontend/src/components/UploadFile.vue index d4f353e413..439261317b 100644 --- a/l2-frontend/src/components/UploadFile.vue +++ b/l2-frontend/src/components/UploadFile.vue @@ -27,6 +27,7 @@ />
Такие структуры файла не поддерживаются
@@ -155,7 +156,6 @@ onMounted(async () => { if (props.simpleMode && currentFileTypes.value.length > 0) { selectedType.value = currentFileTypes.value[0].id; } - noSupportedFileForms.value = unsupportedFileForms(selectedType.value, props.formsFile); }); const changeType = () => { @@ -171,6 +171,7 @@ const changeType = () => { } else { selectedForm.value = null; } + noSupportedFileForms.value = unsupportedFileForms(selectedType.value, props.formsFile); }; watch(selectedType, () => { diff --git a/l2-frontend/src/components/types-and-forms-file.ts b/l2-frontend/src/components/types-and-forms-file.ts index c4ed17c12f..5e887df075 100644 --- a/l2-frontend/src/components/types-and-forms-file.ts +++ b/l2-frontend/src/components/types-and-forms-file.ts @@ -49,7 +49,13 @@ export default function typesAndForms() { return result; }; const unsupportedFileForms = (type: string, forms: string[]) => { - const result = forms.filter(form => form === fileForms.value[type][form]); + const result = forms.filter(form => { + const supportedForm = fileForms.value[type][form]; + if (supportedForm) { + return supportedForm.id === form; + } + return false; + }); return result.length === 0; };