process_schedule.py 2.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. """
  2. @author: luojunhui
  3. 对请求进行操作
  4. """
  5. import json
  6. from applications.functions.common import Functions
  7. from applications.functions.log import logging
  8. async def recall_videos(trace_id, mysql_client):
  9. """
  10. 从 mysql 读取数据
  11. :param trace_id: 唯一 id
  12. :param mysql_client: mysql 服务
  13. :return:
  14. """
  15. select_sql = f"""
  16. SELECT recall_video_id1, kimi_title
  17. FROM long_articles_video_dev
  18. WHERE trace_id = '{trace_id}';
  19. """
  20. info_tuple = await mysql_client.async_select(select_sql)
  21. best_video_id, kimi_title = info_tuple[0]
  22. print(best_video_id)
  23. if best_video_id:
  24. logging(
  25. code="1002",
  26. info="best video_id --{}".format(best_video_id),
  27. function="process",
  28. trace_id=trace_id
  29. )
  30. print("best video id", best_video_id)
  31. response = Functions().request_for_info(best_video_id)
  32. productionCover = response['data'][0]['shareImgPath']
  33. productionName = kimi_title
  34. videoUrl = response['data'][0]['videoPath']
  35. user_id = response['data'][0]['user']['uid']
  36. programAvatar = "https://rescdn.yishihui.com/0temp/lehuo.png"
  37. programId = "wxe8f8f0e23cecad0f"
  38. programName = "票圈乐活"
  39. source = "Web"
  40. root_share_id, productionPath = Functions().create_gzh_path(video_id=best_video_id, shared_uid=user_id)
  41. logging(
  42. code="1002",
  43. info="root_share_id --{}, productionPath -- {}".format(root_share_id, productionPath),
  44. function="process",
  45. trace_id=trace_id
  46. )
  47. result = {
  48. "productionCover": productionCover,
  49. "productionName": productionName,
  50. "programAvatar": programAvatar,
  51. "programId": programId,
  52. "programName": programName,
  53. "source": source,
  54. "rootShareId": root_share_id,
  55. "productionPath": productionPath,
  56. "videoUrl": videoUrl
  57. }
  58. update_result_sql = f"""
  59. UPDATE long_articles_video_dev
  60. SET
  61. result1 = '{json.dumps(result, ensure_ascii=False)}'
  62. WHERE
  63. trace_id = '{trace_id}'
  64. """
  65. await mysql_client.async_insert(update_result_sql)
  66. logging(
  67. code="2000",
  68. info="统计 root_share_id && video_id",
  69. function="process",
  70. trace_id=trace_id,
  71. data={
  72. "rootShareId": root_share_id,
  73. "videoId": best_video_id
  74. }
  75. )
  76. else:
  77. result = {
  78. "traceId": trace_id,
  79. "Message": "No Videos Found now, Please try again in one minute"
  80. }
  81. logging(
  82. code="1002",
  83. info="返回结果",
  84. function="process",
  85. data=result,
  86. trace_id=trace_id
  87. )
  88. return result