diff --git a/api/tasks/memoir_tasks.py b/api/tasks/memoir_tasks.py index d795ab3..a5bb63d 100644 --- a/api/tasks/memoir_tasks.py +++ b/api/tasks/memoir_tasks.py @@ -212,10 +212,11 @@ def process_memoir_segments(self, user_id: str, segment_ids: List[str]): combined_text = "\n\n".join(segment_texts) source_ids = [seg.id for seg in stage_segments] - # 查找或创建章节 + # 查找 active 章节(被清除的章节不继续更新,而是创建新的) stmt_chapter = select(Chapter).where( Chapter.user_id == user_id, Chapter.category == stage, + Chapter.is_active == True, ) result_chapter = db.execute(stmt_chapter) chapter = result_chapter.scalar_one_or_none() @@ -340,10 +341,11 @@ def generate_chapter_content(self, user_id: str, stage: str, new_content: str): try: llm = llm_service.get_llm() - # 查找章节 + # 查找 active 章节(被清除的章节不继续更新,而是创建新的) stmt = select(Chapter).where( Chapter.user_id == user_id, Chapter.category == stage, + Chapter.is_active == True, ) result = db.execute(stmt) chapter = result.scalar_one_or_none()