You've already forked DataMate
fix(knowledge): 优化知识项文件删除逻辑
- 添加内容类型检查,仅处理文件类型的知识项 - 修改源类型判断条件,提前返回非文件上传和手动创建的类型 - 保持原有的文件路径解析和删除操作逻辑 - 维持异常处理和日志记录功能
This commit is contained in:
@@ -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);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user