From 2b90d2f776e1f724bd69133e450a35ba6dd48961 Mon Sep 17 00:00:00 2001 From: Emanuele Ferrelli Date: Mon, 19 Jan 2026 17:44:28 +0100 Subject: [PATCH] Update query video for picklist --- src/service/KSVideoService.js | 28 ++++++++++++++++++++++++++++ src/views/pages/ScenarioExec.vue | 15 ++++++++++++--- 2 files changed, 40 insertions(+), 3 deletions(-) create mode 100644 src/service/KSVideoService.js diff --git a/src/service/KSVideoService.js b/src/service/KSVideoService.js new file mode 100644 index 0000000..0836b19 --- /dev/null +++ b/src/service/KSVideoService.js @@ -0,0 +1,28 @@ +import axios from 'axios'; + +export const KSVideoService = { + /** + * Recupera tutti i KSVideo per il progetto selezionato dall'utente corrente + * @returns {Promise} Promise con la lista di KSVideo + */ + getKSVideos() { + return axios.get('/ksVideos'); + }, + + /** + * Recupera tutti i KSVideo completati per il progetto selezionato dall'utente corrente + * @returns {Promise} Promise con la lista di KSVideo completati + */ + getCompletedKSVideos() { + return axios.get('/ksVideos/completed'); + }, + + /** + * Recupera tutti i KSVideo per un progetto specifico + * @param {string} projectId - ID del progetto + * @returns {Promise} Promise con la lista di KSVideo + */ + getKSVideosByProject(projectId) { + return axios.post('/ksVideos/byProject', projectId); + } +}; \ No newline at end of file diff --git a/src/views/pages/ScenarioExec.vue b/src/views/pages/ScenarioExec.vue index b60a391..cf80183 100644 --- a/src/views/pages/ScenarioExec.vue +++ b/src/views/pages/ScenarioExec.vue @@ -6,6 +6,7 @@ import MarkdownViewer from '@/components/MarkdownViewer.vue'; import ScenarioFileUpload from '@/components/ScenarioFileUpload.vue'; import WorkflowResponsePanel from '@/components/WorkflowResponsePanel.vue'; import { KSDocumentService } from '@/service/KSDocumentService'; +import { KSVideoService } from '@/service/KSVideoService'; import { FileUploadStore } from '@/stores/FileUploadStore'; import { KsVideoGroupStore } from '@/stores/KsVideoGroupStore'; import { LoadingStore } from '@/stores/LoadingStore'; @@ -215,10 +216,18 @@ const extractFoldersFromItems = (items) => { const loadKsFolders = async () => { try { - const docsResponse = await KSDocumentService.getKSDocuments(); - const documents = docsResponse.data || []; + // Carica sia documenti che video con query separate + const [docsResponse, videosResponse] = await Promise.all([ + KSDocumentService.getKSDocuments(), + KSVideoService.getKSVideos() + ]); - const allItems = [...documents, ...videoGroups.value]; + const documents = docsResponse.data || []; + const videos = videosResponse.data || []; + + // Combina documenti e video per l'estrazione dei folder + // Facciamo distinct sui ksKnowledgePath + const allItems = [...documents, ...videos]; const { folders, folderMap } = extractFoldersFromItems(allItems); // Calcola il numero di subfolder per ogni folder