细节优化
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
"""文档服务:上传、删除、配额管理。"""
|
||||
|
||||
import hashlib
|
||||
from datetime import datetime
|
||||
from pathlib import Path
|
||||
|
||||
import filetype
|
||||
@@ -153,16 +154,14 @@ class DocumentService:
|
||||
return self._doc_repo.list_by_knowledge_base(kb_id, category_id=category_id, page=page, page_size=page_size)
|
||||
|
||||
def delete(self, doc_id: str, user: User) -> None:
|
||||
"""删除文档 → 进回收站(3 天后自动彻底删除)。文件暂保留以支持恢复。"""
|
||||
doc = self.get_or_404(doc_id, user)
|
||||
file_size = doc.file_size
|
||||
self._doc_repo.delete(doc)
|
||||
self._delete_doc_files(doc)
|
||||
# 回补配额
|
||||
self._restore_quota(user, file_size)
|
||||
doc.deleted_at = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
|
||||
self._session.commit()
|
||||
|
||||
def _delete_doc_files(self, doc: Document) -> None:
|
||||
"""物理删除文档的原始文件与 Markdown 文件(软删后调用)。"""
|
||||
def purge_files(self, doc: Document) -> None:
|
||||
"""物理删除文档的原始文件与 Markdown 文件(彻底删除时调用)。"""
|
||||
from app.storage.local_storage import get_storage
|
||||
|
||||
storage = get_storage()
|
||||
|
||||
Reference in New Issue
Block a user