From 5507adeb4571babfaab7b2dff3d45a87020eafeb Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Thu, 5 Feb 2026 21:24:12 +0800 Subject: [PATCH] =?UTF-8?q?fix(knowledge):=20=E4=BC=98=E5=8C=96=E7=9F=A5?= =?UTF-8?q?=E8=AF=86=E9=A1=B9=E6=96=87=E4=BB=B6=E5=88=A0=E9=99=A4=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 添加内容类型检查,仅处理文件类型的知识项 - 修改源类型判断条件,提前返回非文件上传和手动创建的类型 - 保持原有的文件路径解析和删除操作逻辑 - 维持异常处理和日志记录功能 --- .../KnowledgeItemApplicationService.java | 23 +++++++++++-------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java b/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java index 08aa9f2..9c9e53a 100644 --- a/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java +++ b/backend/services/data-management-service/src/main/java/com/datamate/datamanagement/application/KnowledgeItemApplicationService.java @@ -809,16 +809,21 @@ public class KnowledgeItemApplicationService { if (knowledgeItem == null) { return; } + if (knowledgeItem.getContentType() != KnowledgeContentType.FILE) { + return; + } KnowledgeSourceType sourceType = knowledgeItem.getSourceType(); - if (sourceType == KnowledgeSourceType.FILE_UPLOAD || sourceType == KnowledgeSourceType.MANUAL) { - String relativePath = knowledgeItem.getContent(); - if (StringUtils.isNotBlank(relativePath)) { - try { - Path filePath = resolveKnowledgeItemStoragePath(relativePath); - deleteFileQuietly(filePath); - } catch (Exception e) { - log.warn("delete knowledge item file error, itemId: {}, path: {}", knowledgeItem.getId(), relativePath, e); - } + if (sourceType != KnowledgeSourceType.FILE_UPLOAD && sourceType != KnowledgeSourceType.MANUAL) { + return; + } + + String relativePath = knowledgeItem.getContent(); + if (StringUtils.isNotBlank(relativePath)) { + try { + Path filePath = resolveKnowledgeItemStoragePath(relativePath); + deleteFileQuietly(filePath); + } catch (Exception e) { + log.warn("delete knowledge item file error, itemId: {}, path: {}", knowledgeItem.getId(), relativePath, e); } } }