From 495e3569e299a394ccf7cc81330ae3aaa26ace9e Mon Sep 17 00:00:00 2001 From: wangys <3401275564@qq.com> Date: Fri, 7 Nov 2025 16:09:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=9F=A5=E8=AF=86=E5=BA=93=E6=96=87=E6=A1=A3?= =?UTF-8?q?=E6=95=B0=E9=87=8F=E5=90=8C=E6=AD=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/AiUploadFileServiceImpl.java | 20 +++++- .../manage/ai/KnowledgeManagementView.vue | 68 +++++++++++++++---- .../manage/ai/components/KnowledgeInfo.vue | 6 +- 3 files changed, 74 insertions(+), 20 deletions(-) diff --git a/schoolNewsServ/ai/src/main/java/org/xyzh/ai/service/impl/AiUploadFileServiceImpl.java b/schoolNewsServ/ai/src/main/java/org/xyzh/ai/service/impl/AiUploadFileServiceImpl.java index 5c87ceb..09d4caa 100644 --- a/schoolNewsServ/ai/src/main/java/org/xyzh/ai/service/impl/AiUploadFileServiceImpl.java +++ b/schoolNewsServ/ai/src/main/java/org/xyzh/ai/service/impl/AiUploadFileServiceImpl.java @@ -278,14 +278,19 @@ public class AiUploadFileServiceImpl implements AiUploadFileService { uploadFile.setDeleted(false); int rows = uploadFileMapper.insertUploadFile(uploadFile); + knowledge.setDocumentCount(knowledge.getDocumentCount() + 1); + int knowledgeRows = knowledgeMapper.updateKnowledge(knowledge); if (rows > 0) { log.info("知识库文件上传成功: uploadFileId={}, sysFileId={}, fileName={}", uploadFile.getID(), sysFile.getID(), originalFilename); // 9. 异步更新向量化状态 asyncUpdateVectorStatus(uploadFile.getID()); - + resultDomain.success("文件上传成功", uploadFile); + if (knowledgeRows <=0) { + resultDomain.setMessage("知识库文件数量更新失败"); + } return resultDomain; } else { resultDomain.fail("保存文件记录失败"); @@ -330,7 +335,9 @@ public class AiUploadFileServiceImpl implements AiUploadFileService { failedFiles.add(file.getOriginalFilename() + ": " + uploadResult.getMessage()); } } - + TbAiKnowledge knowledge = knowledgeMapper.selectKnowledgeById(knowledgeId); + knowledge.setDocumentCount(knowledge.getDocumentCount() + uploadedFiles.size()); + int knowledgeRows = knowledgeMapper.updateKnowledge(knowledge); if (!failedFiles.isEmpty()) { String message = "部分文件上传失败: " + String.join(", ", failedFiles); log.warn(message); @@ -338,7 +345,9 @@ public class AiUploadFileServiceImpl implements AiUploadFileService { } else { resultDomain.success("批量上传成功", uploadedFiles); } - + if (knowledgeRows <=0) { + resultDomain.setMessage("知识库文件数量更新失败"); + } return resultDomain; } catch (Exception e) { @@ -386,9 +395,14 @@ public class AiUploadFileServiceImpl implements AiUploadFileService { deleteEntity.setID(fileId); int rows = uploadFileMapper.deleteUploadFile(deleteEntity); + knowledge.setDocumentCount(knowledge.getDocumentCount() - 1); + int knowledgeRows = knowledgeMapper.updateKnowledge(knowledge); if (rows > 0) { log.info("文件删除成功: {} - {}", fileId, file.getFileName()); resultDomain.success("文件删除成功", true); + if (knowledgeRows <=0) { + resultDomain.setMessage("知识库文件数量更新失败"); + } return resultDomain; } else { resultDomain.fail("文件删除失败"); diff --git a/schoolNewsWeb/src/views/admin/manage/ai/KnowledgeManagementView.vue b/schoolNewsWeb/src/views/admin/manage/ai/KnowledgeManagementView.vue index 5777a19..b4b1ef9 100644 --- a/schoolNewsWeb/src/views/admin/manage/ai/KnowledgeManagementView.vue +++ b/schoolNewsWeb/src/views/admin/manage/ai/KnowledgeManagementView.vue @@ -12,8 +12,9 @@ -