Jelajahi Sumber

上传删除对接个人知识库

chenjun 3 bulan lalu
induk
melakukan
7cbd571cf4

+ 9 - 3
ais_knowledge/knowledge/src/main/java/com/zjugis/ai/knowledge/service/knowledge/KnowledgeFileServiceImpl.java

@@ -1,6 +1,7 @@
 package com.zjugis.ai.knowledge.service.knowledge;
 
 import cn.hutool.core.io.IoUtil;
+import cn.hutool.core.util.StrUtil;
 import com.zjugis.ai.knowledge.common.exception.ErrorCode;
 import com.zjugis.ai.knowledge.common.exception.enums.KnowledgeErrorCodeConstants;
 import com.zjugis.ai.knowledge.common.pojo.PageResult;
@@ -76,6 +77,9 @@ public class KnowledgeFileServiceImpl implements KnowledgeFileService {
             
             UploadDocsReqVO reqVO = new UploadDocsReqVO();
             reqVO.setKnowledge_base_name(knowledgeBaseName);
+            if(StrUtil.isNotBlank(fileDO.getVectorId())){
+                reqVO.setKnowledge_base_name(fileDO.getVectorId());
+            }
             reqVO.setFiles(Collections.singletonList(file));
             
             DocsRespVO respVO = uploadDocsService.upload(reqVO);
@@ -111,17 +115,19 @@ public class KnowledgeFileServiceImpl implements KnowledgeFileService {
         }
 
         if (knowledgeFileDO.getType() != null) {
-            deleteFromKnowledgeBase(knowledgeFileDO.getName());
+            deleteFromKnowledgeBase(knowledgeFileDO.getName(),knowledgeFileDO.getVectorId());
         }
         
         knowledgeFileMapper.deleteById(id);
     }
 
-    private void deleteFromKnowledgeBase(String fileName) {
+    private void deleteFromKnowledgeBase(String fileName, String vectorId) {
         DeleteDocsReqVO reqVO = new DeleteDocsReqVO();
         reqVO.setKnowledge_base_name(knowledgeBaseName);
+        if(StrUtil.isNotBlank(vectorId)){
+            reqVO.setKnowledge_base_name(vectorId);
+        }
         reqVO.setFile_names(Collections.singletonList(fileName));
-        
         DocsRespVO respVO = uploadDocsService.delete(reqVO);
         if (respVO.getCode() != 200) {
             throw exception(new ErrorCode(respVO.getCode(), respVO.getMsg()));