From 724a9fec2338aaf5cc4c4d222b6ea0974703132e Mon Sep 17 00:00:00 2001
From: zhangxiao <898441624@qq.com>
Date: 星期五, 30 八月 2024 19:29:03 +0800
Subject: [PATCH] fix: 修改bug

---
 src/views/sessionManager/components/uploadFile.vue         |   30 +++++++--
 src/api/session.ts                                         |   16 +++++
 src/views/sessionManager/index.vue                         |   85 +++++++++++++++++++++++++++-
 src/views/sessionManager/components/seniorAgentSession.vue |   10 ++-
 4 files changed, 127 insertions(+), 14 deletions(-)

diff --git a/src/api/session.ts b/src/api/session.ts
index 6f221f3..07ab02b 100644
--- a/src/api/session.ts
+++ b/src/api/session.ts
@@ -78,6 +78,22 @@
   };
   return axios.post('/api/v1/document/upload_and_parse', params, config);
 }
+//涓婁紶瑙f瀽v1/document/infos
+
+export function chatInfos(data: { doc_ids: Array }) {
+  return axios.post<ISessionListResult>(
+    '/api/v1/document/infos',
+    data
+  );
+}
+
+//涓婁紶鍒犻櫎鏂囨。v1/document/rm
+export function chatRm(data: { doc_id: Array }) {
+  return axios.post<ISessionListResult>(
+    '/api/v1/document/rm',
+    data
+  );
+}
 
 //楂樼骇浼氳瘽
 export function seniorAgentApi(params) {
diff --git a/src/views/sessionManager/components/seniorAgentSession.vue b/src/views/sessionManager/components/seniorAgentSession.vue
index 0e2c148..5ec2c48 100644
--- a/src/views/sessionManager/components/seniorAgentSession.vue
+++ b/src/views/sessionManager/components/seniorAgentSession.vue
@@ -298,6 +298,7 @@
           ref="fileInput"
           :sessionId="activeSessionId"
           :handleRemove="handleRemove"
+          :typeXLse="false"
           @selectFileCallback="selectFileCallback"
         ></uploadFile>
         <a-button
@@ -562,6 +563,7 @@
 
     prompts.value = session.prompts;
     activeSessionId.value = '';
+    EventBus.emit('queryAgent', uploaditemList.value);
     uploaditemList.value = [];
     console.log(12123);
     getAentId(session.id);
@@ -622,6 +624,7 @@
       const x = await reader?.read();
       if (x) {
         const { done, value } = x;
+        console.log(x, 8888);
 
         try {
           const val = JSON.parse(value?.data || '');
@@ -709,8 +712,9 @@
     conversation_id.value = session.id;
     activeSessionId.value = session.id;
     dialog_id.value = session.dialog_id;
-
+    EventBus.emit('queryAgent', uploaditemList.value);
     uploaditemList.value = [];
+
     getAentId(session.dialog_id);
     from.name = session.name;
     const { code, data } = await getSessionDetailsApi(session.id);
@@ -956,7 +960,7 @@
       const x = await reader?.read();
       if (x) {
         const { done, value } = x;
-        // console.log(x, 999);
+        console.log(x, 999);
 
         if (value && value?.event == 'message') {
           try {
@@ -971,7 +975,7 @@
               } else {
                 streamStr.value = d.code;
               }
-
+              EventBus.emit('queryAgent', uploaditemList.value);
               startDisplayStr();
             }
           } catch (e) {
diff --git a/src/views/sessionManager/components/uploadFile.vue b/src/views/sessionManager/components/uploadFile.vue
index 361acbc..15e9921 100644
--- a/src/views/sessionManager/components/uploadFile.vue
+++ b/src/views/sessionManager/components/uploadFile.vue
@@ -37,6 +37,7 @@
       type: Number,
       default: 6,
     },
+    typeXLse: Boolean,
     sessionId: String,
     action: String, // 涓婁紶鐨勬湇鍔″櫒鍦板潃
     url: String, //鍥炴樉鐨勬枃浠跺湴鍧�
@@ -81,15 +82,19 @@
     }
     EventBus.on('queryAgent', (eventData) => {
       // 鏇存柊缁勪欢鐨勬暟鎹�
-      if (fileList.value.length == 1) {
-        fileList.value = [];
+      if (eventData) {
+        if (fileList.value.length == 1) {
+          fileList.value = [];
+        } else {
+          fileList.value.forEach((item) => {
+            if (item.name != eventData.name) {
+              fileList.value = [];
+              fileList.value.push(item);
+            }
+          });
+        }
       } else {
-        fileList.value.forEach((item) => {
-          if (item.name != eventData.name) {
-            fileList.value = [];
-            fileList.value.push(item);
-          }
-        });
+        fileList.value = [];
       }
     });
   });
@@ -132,7 +137,16 @@
     };
   };
 
+  const typeXLse = computed(() => {
+    return props.type;
+  });
+
   function beforeUpload(resolve) {
+    if (typeXLse) {
+      return new Promise((resolve) => {
+        resolve(true);
+      });
+    }
     let name = ['xlsx', 'xls'];
     let fileName = resolve.name.split('.');
     let fileExt = fileName[fileName.length - 1];
diff --git a/src/views/sessionManager/index.vue b/src/views/sessionManager/index.vue
index 03de01b..331cb15 100644
--- a/src/views/sessionManager/index.vue
+++ b/src/views/sessionManager/index.vue
@@ -384,9 +384,11 @@
                 ></updataFile>
                 <!-- <uploadFile
                   ref="fileInput"
-                  :sessionId="activeSessionId"
+                  :handleRemove="handleRemove"
+                  :typeXLse="false"
                   @selectFileCallback="selectFileCallback"
                 ></uploadFile> -->
+
                 <a-button
                   :disabled="chatDis"
                   @click="sentClick"
@@ -545,6 +547,9 @@
     getSessionDetailsApi,
     sessionListApi,
     uploadWithoutKb,
+    uploadAndParse,
+    chatInfos,
+    chatRm,
   } from '@/api/session';
   import { getAuthorization } from '@/utils/auth';
   import { queryCanvasList } from '@/api/Agent';
@@ -772,11 +777,79 @@
     uploaditemList.value = [...uploaditemList.value, ...data];
   };
 
+  //涓婁紶
+  // const selectFileCallback = async (resData, file) => {
+  //   console.log(111);
+  //   try {
+  //     const formData = new FormData();
+  //     uploaditemList.value = resData;
+  //     uploaditemList.value.map((item) => {
+  //       if (item.name == file[0].file.name) {
+  //         item.onFileSelectedLoading = true;
+  //         item.textName = '涓婁紶涓�';
+  //       }
+  //       return item;
+  //     });
+  //     debugger;
+  //     if (!activeSessionId.value) {
+  //       await createSession(resData);
+  //     }
+
+  //     // onFileSelectedLoading.value = true;
+  //     // textName.value = '涓婁紶涓�';
+
+  //     formData.append('files', file[0].file);
+  //     formData.append('conversation_id', activeSessionId.value);
+
+  //     console.log(formData, 'formData');
+  //     const { data, code } = await uploadAndParse(formData);
+  //     if (code === 200) {
+  //       uploaditemList.value.map((item: any) => {
+  //         item.onFileSelectedLoading = false;
+  //         item.textName = '涓婁紶鎴愬姛';
+  //         return item;
+  //       });
+  //       getInfo(data);
+  //       // onFileSelectedLoading.value = false;
+  //       // textName.value = '涓婁紶鎴愬姛';
+  //     }
+  //   } catch (err) {
+  //     uploaditemList.value.map((item: any) => {
+  //       item.onFileSelectedLoading = false;
+  //       item.textName = '涓婁紶澶辫触';
+  //       return item;
+  //     });
+  //     // onFileSelectedLoading.value = false;
+  //     // textName.value = '涓婁紶澶辫触';
+  //     Message.error('涓婁紶澶辫触');
+  //   }
+  // };
+
+  //涓婁紶鎴愬姛瑙f瀽getinfo
+  const getInfo = async (id) => {
+    const { code, data } = await chatInfos({
+      doc_ids: activeSessionId.value,
+    });
+    if (code === 200) {
+      uploaditemList.value = data;
+    }
+  };
+  //鍒犻櫎涓婁紶鏂囨。
+  const deleteUpload = async (id) => {
+    const { code, data } = await chatRm({
+      doc_id: id,
+    });
+    if (code === 200) {
+      getInfo();
+    }
+  };
+
   let onFileSelectedLoading = ref(false);
 
   const deleteFile = (item) => {
     console.log(uploaditemList.value);
     uploaditemList.value.splice(item.index, 1);
+    // EventBus.emit('queryAgent', item);
   };
 
   const { toClipboard } = useClipboard();
@@ -846,7 +919,7 @@
     console.log(name, '鏂板缓浼氳瘽鍚嶇О');
 
     const res = await addSessionApi({
-      dialog_id: id,
+      dialog_id: '',
       conversation_desc: name,
     });
     // console.log(res, "res");
@@ -1123,9 +1196,10 @@
     activeSessionId.value = '';
   });
   onMounted(() => {
+    document.getElementsByTagName;
     let container = document.getElementById('container');
     container.addEventListener('click', () => {
-      fileInput.value.cancel();
+      // fileInput.value.cancel();
     });
     EventBus.on('newChat', () => {
       agentType.value = '1';
@@ -1391,6 +1465,11 @@
         }
       }
     }
+    .uploadFileDis {
+      :deep(.arco-upload-list-type-text) {
+        display: none;
+      }
+    }
 
     .chat-item {
       padding: 10px 0;

--
Gitblit v1.8.0