From 3a386996bb7e5fb2ad04c004e060b8ed93ba5e47 Mon Sep 17 00:00:00 2001 From: Kseninia Mikhaylova Date: Tue, 24 Jun 2025 13:41:59 +0300 Subject: [PATCH] actions --- front/pages/kompas.vue | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/front/pages/kompas.vue b/front/pages/kompas.vue index 82a8e01..44173f7 100644 --- a/front/pages/kompas.vue +++ b/front/pages/kompas.vue @@ -17,9 +17,10 @@ const { } = useKompasActions() const selectedAction = ref() -watch(selectedAction, ()=>{ +watch(selectedAction, () => { selectedTypes.value = availableActions.value[selectedAction.value].allowedTypes }) + // Синхронизация с КОМПАС async function syncKompas() { try { @@ -38,7 +39,34 @@ async function syncKompas() { alert('Не удалось получить список документов из КОМПАС') } } +const canRunAction = computed(() => { + return selectedAction.value && filteredDocuments.value.length > 0 +}) +async function runSelectedAction() { + if (!selectedAction.value) { + alert('Выберите действие') + return + } + + try { + // Отправляем команду на бэкенд + const result = await sendCommandToPython(selectedAction.value) + + console.log('Результат выполнения:', result) + + if (result && result.status === 'success') { + alert(`Действие "${selectedAction.value}" выполнено успешно!`) + } else if (result && result.status === 'error') { + alert(`Ошибка при выполнении: ${result.error || 'Неизвестная ошибка'}`) + } else { + alert('Не удалось получить результат от сервера') + } + } catch (err) { + console.error('Ошибка при выполнении действия:', err) + alert('Произошла ошибка при выполнении действия') + } +}