From 7f7872b68ccfaa3de9d218683b3e83088f21e4d3 Mon Sep 17 00:00:00 2001
From: yinbangzhong <zhongbangyin@126.com>
Date: 星期五, 23 八月 2024 14:37:28 +0800
Subject: [PATCH] session doc

---
 src/views/sessionManager/index.vue |   39 ++++++++++++++++++++++++++++++++-------
 1 files changed, 32 insertions(+), 7 deletions(-)

diff --git a/src/views/sessionManager/index.vue b/src/views/sessionManager/index.vue
index 1ac24f2..31bb72c 100644
--- a/src/views/sessionManager/index.vue
+++ b/src/views/sessionManager/index.vue
@@ -523,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 = [];
@@ -540,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) => {

--
Gitblit v1.8.0