topicTask.py 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import json
  2. import os
  3. from loguru import logger
  4. import sys
  5. import time
  6. from utils.sync_mysql_help import mysql
  7. import utils.params as DecodeWorkflowParam
  8. logger.add(sink=sys.stderr, level="ERROR", backtrace=True, diagnose=True)
  9. def update_topic_result_by_id(param:DecodeWorkflowParam):
  10. sql = "SELECT * FROM decode_workflow WHERE task_id = %s"
  11. tasks = mysql.fetchone(sql, (param.task_id,))
  12. if not tasks:
  13. logger.info(f"task_id = {param.task_id} , 任务不存在")
  14. return None
  15. result, status,error_reason,video_url,title = tasks['result'], tasks['task_status'],tasks['error_reason'],tasks['video_url'],tasks['title']
  16. sql = "UPDATE decode_workflow SET video_url = %s, task_status = %s, title = %s WHERE task_id = %s"
  17. mysql.execute(sql, (param.video_url, param.status, param.title, param.task_id))
  18. return result, status,error_reason,video_url,title
  19. def get_topic_result_by_id(task_id:str):
  20. sql = "SELECT * FROM decode_workflow WHERE task_id = %s"
  21. tasks = mysql.fetchone(sql, (task_id,))
  22. if not tasks:
  23. logger.info(f"task_id = {task_id} , 任务不存在")
  24. return None
  25. return tasks['result'], tasks['task_status'],tasks['error_reason']
  26. def search_topic_list(param:DecodeWorkflowParam):
  27. sql = "SELECT * FROM decode_workflow WHERE video_id = %s AND video_url = %s AND title = %s AND task_status = %s"
  28. tasks = mysql.fetchall(sql, (param.video_id,param.video_url,param.title,param.task_status))
  29. if not tasks:
  30. logger.info(f"任务不存在")
  31. return None
  32. return tasks
  33. # if __name__ == "__main__":
  34. # decode_task_status_handler()