jihuaqiang 5 месяцев назад
Родитель
Сommit
8925b49868
2 измененных файлов с 5 добавлено и 5 удалено
  1. 3 3
      src/database/models.py
  2. 2 2
      src/tools/scheduler.py

+ 3 - 3
src/database/models.py

@@ -147,7 +147,7 @@ class QueryTaskDAO:
             logger.error(f"标记任务失败时出错: {e}")
             return False
     
-    def update_task_results(self, task_id: int, querys: List[str], query_type: str, status: int = QueryTaskStatus.SUCCESS) -> bool:
+    def update_task_results(self, task_id: int, querys: List[str], knowledge_type: str, query_type: str, status: int = QueryTaskStatus.SUCCESS) -> bool:
         """
         更新任务结果
         
@@ -161,9 +161,9 @@ class QueryTaskDAO:
         """
         try:
             with self.db_manager.get_cursor() as cursor:
-                sql = "UPDATE knowledge_suggest_query SET querys = %s, status = %s, query_type = %s WHERE task_id = %s"
+                sql = "UPDATE knowledge_suggest_query SET querys = %s, status = %s, knowledgeType = %s, query_type = %s WHERE task_id = %s"
                 querys_json = json.dumps(querys, ensure_ascii=False)
-                cursor.execute(sql, (querys_json, status, query_type, task_id))
+                cursor.execute(sql, (querys_json, status, knowledge_type, query_type, task_id))
                 return cursor.rowcount > 0
         except Exception as e:
             logger.error(f"更新任务结果失败: {e}")

+ 2 - 2
src/tools/scheduler.py

@@ -81,7 +81,7 @@ class TaskScheduler:
             
             try:
                 # 使用Agent生成查询词(Agent内部会在内容类型时直接失败并返回空)
-                queries, query_type = await self.agent.generate_queries(task.question, task.need_store, task.task_id)
+                queries, knowledge_type, query_type = await self.agent.generate_queries(task.question, task.need_store, task.task_id)
                 
                 # 若为空,视为不支持内容类型,标记失败
                 if not queries:
@@ -90,7 +90,7 @@ class TaskScheduler:
                     return
                 
                 # 更新任务结果
-                success = self.task_dao.update_task_results(task.task_id, queries, query_type, QueryTaskStatus.SUCCESS)
+                success = self.task_dao.update_task_results(task.task_id, queries, knowledge_type, query_type, QueryTaskStatus.SUCCESS)
                 
                 if success:
                     logger.info(f"任务 {task.task_id} 处理成功,生成 {len(queries)} 个查询词")