From 0490889bd17d6603e778b245aaaa599a7248d78f Mon Sep 17 00:00:00 2001 From: xiamuceer-j Date: Thu, 29 Jan 2026 15:46:15 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E5=AF=BC=E5=85=A5/=E5=87=BA=E5=90=8E=E6=97=A0?= =?UTF-8?q?=E6=B3=95=E5=8A=A0=E8=BD=BD=E7=AB=A0=E8=8A=82=E5=88=86=E6=9E=90?= =?UTF-8?q?=E7=8A=B6=E6=80=81=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/app/services/import_export_service.py | 27 ++++++++++++++++--- 1 file changed, 23 insertions(+), 4 deletions(-) diff --git a/backend/app/services/import_export_service.py b/backend/app/services/import_export_service.py index f6afb4a..97cf9a9 100644 --- a/backend/app/services/import_export_service.py +++ b/backend/app/services/import_export_service.py @@ -13,6 +13,7 @@ from app.models.writing_style import WritingStyle from app.models.generation_history import GenerationHistory from app.models.career import Career, CharacterCareer from app.models.memory import StoryMemory, PlotAnalysis +from app.models.analysis_task import AnalysisTask from app.models.project_default_style import ProjectDefaultStyle from app.schemas.import_export import ( ProjectExportData, @@ -832,9 +833,9 @@ class ImportExportService: statistics["story_memories"] = memories_count logger.info(f"导入故事记忆数: {memories_count}") - # 导入剧情分析 + # 导入剧情分析(传入user_id以便创建分析任务记录) plot_analysis_count = await ImportExportService._import_plot_analysis( - new_project.id, data.get("plot_analysis", []), chapter_title_to_id, db + new_project.id, data.get("plot_analysis", []), chapter_title_to_id, db, user_id ) statistics["plot_analysis"] = plot_analysis_count logger.info(f"导入剧情分析数: {plot_analysis_count}") @@ -1260,9 +1261,12 @@ class ImportExportService: project_id: str, plot_data: List[Dict], chapter_mapping: Dict[str, str], - db: AsyncSession + db: AsyncSession, + user_id: str = None ) -> int: - """导入剧情分析""" + """导入剧情分析,同时创建已完成的分析任务记录""" + from datetime import datetime + count = 0 for analysis_data in plot_data: chapter_title = analysis_data.get("chapter_title") @@ -1309,6 +1313,21 @@ class ImportExportService: description_ratio=analysis_data.get("description_ratio") ) db.add(analysis) + + # 同时创建已完成的分析任务记录,这样章节管理页面会显示"已分析"状态 + if user_id: + now = datetime.utcnow() + analysis_task = AnalysisTask( + chapter_id=chapter_id, + user_id=user_id, + project_id=project_id, + status='completed', + progress=100, + started_at=now, + completed_at=now + ) + db.add(analysis_task) + count += 1 return count