fix(knowledge): 优化知识项文件删除逻辑

- 添加内容类型检查,仅处理文件类型的知识项
- 修改源类型判断条件,提前返回非文件上传和手动创建的类型
- 保持原有的文件路径解析和删除操作逻辑
- 维持异常处理和日志记录功能
This commit is contained in:
2026-02-05 21:24:12 +08:00
parent 48cf49d064
commit 5507adeb45

View File

@@ -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);
}
}
}