CzRger 1 месяц назад
Родитель
Сommit
29f3a27f5f
1 измененных файлов с 24 добавлено и 57 удалено
  1. 24 57
      src/views/manage/knowledge/upload/index.vue

+ 24 - 57
src/views/manage/knowledge/upload/index.vue

@@ -309,7 +309,7 @@
                       {{ value.name }}
                     </div>
                     <template v-if="value.error">
-                      <el-tooltip :content="value.error" placement="top">
+                      <el-tooltip :content="value.errorMsg" placement="top">
                         <SvgIcon
                           name="czr_tip"
                           color="var(--czr-warning-color)"
@@ -443,53 +443,9 @@ const state: any = reactive({
   },
   taskFiles: {
     timer: null,
+    reconnect: 0,
     waiting: new Map(),
     success: new Map(),
-    // waiting: new Map([
-    //   [
-    //     1,
-    //     {
-    //       name: '高效办成一件事视频脚本20250411-调整.docx',
-    //       date: '2022-09-17',
-    //       size: 123123132,
-    //       process: 80,
-    //       timestamp: 1000 * 60 * 23,
-    //       error: '',
-    //     },
-    //   ],
-    //   [
-    //     2,
-    //     {
-    //       name: '高效办成一件事视频脚本20250411-调整.docx',
-    //       date: '2022-09-17',
-    //       size: 1231231321,
-    //       process: 100,
-    //       timestamp: 1000 * 60 * 17,
-    //       error: '',
-    //     },
-    //   ],
-    //   [
-    //     22,
-    //     {
-    //       name: '高效办成一件事视频脚本20250411-调整.docx',
-    //       date: '2022-09-17',
-    //       size: 1231231321,
-    //       process: 100,
-    //       timestamp: 1000 * 60 * 17,
-    //       error: '123123123123123',
-    //     },
-    //   ],
-    // ]),
-    // success: new Map([
-    //   [
-    //     3,
-    //     {
-    //       name: '高效办成一件事视频脚本20250411-调整.docx',
-    //       date: '2022-09-17',
-    //       size: 1231231321,
-    //     },
-    //   ],
-    // ]),
   },
 })
 const UploadConfig = {
@@ -638,19 +594,30 @@ const initTask = () => {
   const refreshStatus = () => {
     datasetsDocumentsDealStatus({
       fileIds: state.uploadFileList.map((v) => v.url),
-    }).then(({ data }: any) => {
-      data.forEach((v) => {
-        const f = state.taskFiles.waiting.get(v.fileId)
-        f.status = v.indexingStatus
-        if (f.status === 'completed') {
-          state.taskFiles.success.set(v.fileId, f)
-          state.taskFiles.waiting.delete(v.fileId)
+    })
+      .then(({ data }: any) => {
+        data.forEach((v) => {
+          const f = state.taskFiles.waiting.get(v.fileId)
+          f.status = v.indexingStatus
+          if (v.status === 'failed') {
+            v.error = true
+            v.errorMsg = v.dealException
+          }
+          if (f.status === 'completed') {
+            state.taskFiles.success.set(v.fileId, f)
+            state.taskFiles.waiting.delete(v.fileId)
+          }
+        })
+        if (state.taskFiles.waiting.size === 0) {
+          clearInterval(state.taskFiles.timer)
+        }
+      })
+      .catch(() => {
+        state.taskFiles.reconnect++
+        if (state.taskFiles.reconnect > 2) {
+          clearInterval(state.taskFiles.timer)
         }
       })
-      if (state.taskFiles.waiting.size === 0) {
-        clearInterval(state.taskFiles.timer)
-      }
-    })
   }
   if (state.uploadType === UploadTypeEnum.Text) {
     datasetsUpdateExport({