用user_id save

This commit is contained in:
CakeCN
2025-12-09 22:03:55 +08:00
parent 9b131dfc94
commit ed6075a89c
2 changed files with 9 additions and 11 deletions

View File

@@ -8,12 +8,11 @@ from urllib.parse import urlparse
from datetime import datetime from datetime import datetime
from bson import ObjectId from bson import ObjectId
def save_learning_progress(user_uuid: str, chatmanager, user_id: str) -> bool: def save_learning_progress(chatmanager, user_id: str) -> bool:
""" """
保存用户学习进度到MongoDB 保存用户学习进度到MongoDB
参数: 参数:
- user_uuid: 用户UUID
- chatmanager: ChatManager实例包含学习进度数据 - chatmanager: ChatManager实例包含学习进度数据
- user_id: 用户ID - user_id: 用户ID
@@ -29,7 +28,6 @@ def save_learning_progress(user_uuid: str, chatmanager, user_id: str) -> bool:
his_data = dialog_list['data'] his_data = dialog_list['data']
# 构建学习进度数据 # 构建学习进度数据
progress_data = { progress_data = {
"user_uuid": user_uuid,
"user_id": user_id, "user_id": user_id,
"material_id": chatmanager.material_id, "material_id": chatmanager.material_id,
"chapter_name": chatmanager.chapter_name, "chapter_name": chatmanager.chapter_name,
@@ -44,7 +42,7 @@ def save_learning_progress(user_uuid: str, chatmanager, user_id: str) -> bool:
# 保存到MongoDB使用upsert操作如果存在则更新不存在则插入 # 保存到MongoDB使用upsert操作如果存在则更新不存在则插入
mongo.db.learning_progress.update_one( mongo.db.learning_progress.update_one(
{ {
"user_uuid": user_uuid, "user_id": user_id,
"material_id": chatmanager.material_id, "material_id": chatmanager.material_id,
"chapter_name": chatmanager.chapter_name, "chapter_name": chatmanager.chapter_name,
"lesson_name": chatmanager.lesson_name "lesson_name": chatmanager.lesson_name
@@ -53,7 +51,7 @@ def save_learning_progress(user_uuid: str, chatmanager, user_id: str) -> bool:
upsert=True upsert=True
) )
current_app.logger.info(f"学习进度保存成功: user_uuid={user_uuid}, lesson={chatmanager.lesson_name}") current_app.logger.info(f"学习进度保存成功: user_id={user_id}, lesson={chatmanager.lesson_name}")
return True return True
except Exception as e: except Exception as e:
current_app.logger.error(f"保存学习进度失败: {str(e)}") current_app.logger.error(f"保存学习进度失败: {str(e)}")
@@ -102,12 +100,12 @@ def get_multiagents_dialog_list(user_id: str) -> List[Dict]:
current_app.logger.error(f"获取MultiAgents对话列表异常: {str(e)}") current_app.logger.error(f"获取MultiAgents对话列表异常: {str(e)}")
return [] return []
def load_learning_progress(user_uuid: str, material_id: str, chapter_name: str, lesson_name: str) -> Optional[Dict]: def load_learning_progress(user_id: str, material_id: str, chapter_name: str, lesson_name: str) -> Optional[Dict]:
""" """
加载用户学习进度 加载用户学习进度
参数: 参数:
- user_uuid: 用户UUID - user_id: 用户ID
- material_id: 课程ID - material_id: 课程ID
- chapter_name: 章节名 - chapter_name: 章节名
- lesson_name: 课时名 - lesson_name: 课时名
@@ -118,7 +116,7 @@ def load_learning_progress(user_uuid: str, material_id: str, chapter_name: str,
try: try:
mongo = current_app.extensions["mongo"] mongo = current_app.extensions["mongo"]
progress = mongo.db.learning_progress.find_one({ progress = mongo.db.learning_progress.find_one({
"user_uuid": user_uuid, "user_id": user_id,
"material_id": material_id, "material_id": material_id,
"chapter_name": chapter_name, "chapter_name": chapter_name,
"lesson_name": lesson_name "lesson_name": lesson_name

View File

@@ -86,7 +86,7 @@ class AgentNamespace(Namespace):
chatmanager.function_manager.add_function(next_chapter, {'user_uuid': user_uuid}) chatmanager.function_manager.add_function(next_chapter, {'user_uuid': user_uuid})
if not chatmanager.restart:# 尝试加载用户学习进度 if not chatmanager.restart:# 尝试加载用户学习进度
progress = load_learning_progress(user_uuid, course_id, chapter_name, lesson_name) progress = load_learning_progress(user_id, course_id, chapter_name, lesson_name)
need_skip_chapters = 0 need_skip_chapters = 0
if progress: if progress:
@@ -243,8 +243,8 @@ class AgentNamespace(Namespace):
# 调用保存学习进度功能 # 调用保存学习进度功能
chatmanager = user_uuid2chatmanager.get(uuid) chatmanager = user_uuid2chatmanager.get(uuid)
if chatmanager: if chatmanager:
save_result = save_learning_progress(uuid, chatmanager, user_id) save_result = save_learning_progress(chatmanager, user_id)
print(f"保存学习进度结果: {save_result}, user_uuid={uuid}") print(f"保存学习进度结果: {save_result}")
except Exception as e: except Exception as e:
print(f"保存学习进度时发生异常: {str(e)}") print(f"保存学习进度时发生异常: {str(e)}")