From b3b34fa409762b44e6fd3c89e651f8c465556a48 Mon Sep 17 00:00:00 2001 From: zhangxiao <898441624@qq.com> Date: 星期五, 23 八月 2024 19:25:05 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.5.5:10010/r/web/flow_web --- src/views/sessionManager/index.vue | 47 ++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 40 insertions(+), 7 deletions(-) diff --git a/src/views/sessionManager/index.vue b/src/views/sessionManager/index.vue index ae0b24f..31bb72c 100644 --- a/src/views/sessionManager/index.vue +++ b/src/views/sessionManager/index.vue @@ -496,6 +496,7 @@ const fileInput = ref(null); const chatDataMeg = reactive({}); const visible = ref(false); + let toStop = false; const rules = { name: [ @@ -522,13 +523,10 @@ }; let dataItem = []; const getTxt = (data, role, message, index) => { - if (/##0\$\$/.test(message)) { + if (/##[0-9]\$\$/.test(message)) { if (role == 'assistant' && index) { - data.forEach((item) => { - if (Object.keys(item).length !== 0 && item?.doc_aggs.length > 0) { - dataItem = item.doc_aggs; - } - }); + let i = index / 2 - 1 > 0 ? index / 2 - 1 : 0; + dataItem = data[i].doc_aggs; } } else { dataItem = []; @@ -539,7 +537,35 @@ const clickHref = (item) => { // return Message.warning('鏆傛棤娉曟煡鐪�'); - window.open(`/api/v1/document/show/${item.doc_id}`, '_blank'); + // window.open(`/api/v1/document/get/${item.doc_id}`, '_blank'); + downloadFile({ + url: `/api/v1/document/get/${item.doc_id}`, + filename: item.doc_name, + }); + }; + + const downloadFile = ({ + url, + filename, + target, + }: { + url: string; + filename?: string; + target?: string; + }) => { + const downloadElement = document.createElement('a'); + downloadElement.style.display = 'none'; + downloadElement.href = url; + if (target) { + downloadElement.target = '_blank'; + } + downloadElement.rel = 'noopener noreferrer'; + if (filename) { + downloadElement.download = filename; + } + document.body.appendChild(downloadElement); + downloadElement.click(); + document.body.removeChild(downloadElement); }; const getIconByExtension = computed(() => (extension) => { @@ -778,6 +804,7 @@ const startChat = async (valMsg) => { chatDis.value = true; loading.value = true; + toStop = false; sessionDetailList.value.push({ content: valMsg, role: 'user', @@ -805,6 +832,11 @@ .getReader(); currIndex.value = 0; while (true) { + if (toStop) { + displayedText.value = ''; + setChatDataMeg(chatDataMeg); + break; + } const x = await reader?.read(); if (x) { const { done, value } = x; @@ -847,6 +879,7 @@ loading.value = false; chatDis.value = false; isStopChat.value = true; + toStop = true; console.log('stopChat'); console.log(displayedText.value, 'displayedText'); console.log(sessionDetailList.value, 'sessionDetailList'); -- Gitblit v1.8.0