|
@@ -34,9 +34,29 @@ def get_topic_result_by_id(task_id:str):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
-def search_topic_list(param:DecodeWorkflowParam):
|
|
|
|
|
- sql = "SELECT * FROM decode_workflow WHERE video_id = %s AND video_url = %s AND title = %s AND task_status = %s"
|
|
|
|
|
- tasks = mysql.fetchall(sql, (param.video_id,param.video_url,param.title,param.task_status))
|
|
|
|
|
|
|
+def search_topic_list(param=None):
|
|
|
|
|
+ base_sql = "SELECT * FROM decode_workflow"
|
|
|
|
|
+ conditions = []
|
|
|
|
|
+ values = []
|
|
|
|
|
+ if isinstance(param, dict):
|
|
|
|
|
+ v_id = param.get("video_id")
|
|
|
|
|
+ v_url = param.get("video_url")
|
|
|
|
|
+ title = param.get("title")
|
|
|
|
|
+ status = param.get("task_status")
|
|
|
|
|
+ if v_id:
|
|
|
|
|
+ conditions.append("video_id = %s")
|
|
|
|
|
+ values.append(v_id)
|
|
|
|
|
+ if v_url:
|
|
|
|
|
+ conditions.append("video_url = %s")
|
|
|
|
|
+ values.append(v_url)
|
|
|
|
|
+ if title:
|
|
|
|
|
+ conditions.append("title = %s")
|
|
|
|
|
+ values.append(title)
|
|
|
|
|
+ if status is not None:
|
|
|
|
|
+ conditions.append("task_status = %s")
|
|
|
|
|
+ values.append(status)
|
|
|
|
|
+ sql = base_sql if not conditions else f"{base_sql} WHERE " + " AND ".join(conditions)
|
|
|
|
|
+ tasks = mysql.fetchall(sql, tuple(values))
|
|
|
if not tasks:
|
|
if not tasks:
|
|
|
logger.info(f"任务不存在")
|
|
logger.info(f"任务不存在")
|
|
|
return None
|
|
return None
|