diff --git a/Html/apps/services/course_services/learning_progess_process.py b/Html/apps/services/course_services/learning_progess_process.py index 7de7ff5..c91dda5 100644 --- a/Html/apps/services/course_services/learning_progess_process.py +++ b/Html/apps/services/course_services/learning_progess_process.py @@ -36,6 +36,7 @@ def save_learning_progress(chatmanager, user_id: str) -> bool: "chat_historys": chatmanager.chat_historys, "scores": chatmanager.scores, "multiagents_dialogs": his_data, + "chapter_chain_length": len(chatmanager.chapter_chain), "updated_at": datetime.now() } @@ -146,6 +147,7 @@ def load_learning_progress(user_id: str, material_id: str, chapter_name: str, le "chat_historys": [], "scores": [], "chapter_chain_now": None, + "chapter_chain_length": 0, "updated_at": datetime.now().isoformat() }, "message": "未找到学习记录,返回默认值" @@ -164,6 +166,7 @@ def load_learning_progress(user_id: str, material_id: str, chapter_name: str, le "chat_historys": [], "scores": [], "chapter_chain_now": None, + "chapter_chain_length": 0, "updated_at": datetime.now().isoformat() }, "message": error_msg diff --git a/Html/apps/templates/confirm_load_history.html b/Html/apps/templates/confirm_load_history.html index 6cc2b4e..410cbe3 100644 --- a/Html/apps/templates/confirm_load_history.html +++ b/Html/apps/templates/confirm_load_history.html @@ -61,16 +61,26 @@
-

加载历史数据确认

-

您即将进入学习环境,是否需要加载您之前的对话历史记录和学习进度数据?

-
- - 是,加载历史数据 - - - 否,重新开始 - -
+ {% if is_course_finished %} +

重新学习确认

+

您已经完成了该课程的学习,是否要重新开始学习?

+
+ + 重新开始学习 + +
+ {% else %} +

加载历史数据确认

+

您即将进入学习环境,是否需要加载您之前的对话历史记录和学习进度数据?

+
+ + 是,加载历史数据 + + + 否,重新开始 + +
+ {% endif %}
\ No newline at end of file diff --git a/Html/apps/views/vscode.py b/Html/apps/views/vscode.py index c4d2b85..4505067 100644 --- a/Html/apps/views/vscode.py +++ b/Html/apps/views/vscode.py @@ -162,12 +162,21 @@ def desktop_nouser(course_id, chapter_name, lesson_name): # 没有学习记录,直接跳转到学习页面,不显示确认加载历史的页面 return redirect(url_for("vscode.desktop", user_uuid=user_uuid, course_id=course_id, chapter_name=chapter_name, lesson_name=lesson_name, load_history="false")) + # 获取学习记录数据 + progress_data = progress_result["data"] + chapter_chain_now = progress_data.get("chapter_chain_now", -1) + chapter_chain_length = progress_data.get("chapter_chain_length", 0) + + # 检查是否已经学完所有章节 + is_course_finished = chapter_chain_now >= chapter_chain_length - 1 + return render_template( "confirm_load_history.html", user_uuid=user_uuid, course_id=course_id, chapter_name=chapter_name, - lesson_name=lesson_name + lesson_name=lesson_name, + is_course_finished=is_course_finished ) @bp.route("/vscode_data", methods=["POST"])