insertVideoRoute.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. """
  2. @author: luojunhui
  3. """
  4. from config import daily_video
  5. async def insert(db_client, params, request_id):
  6. """
  7. :return:
  8. """
  9. try:
  10. video_id = params['video_id']
  11. title = params['title']
  12. return_cnt = params['last_day_return']
  13. uid = params['uid']
  14. view_cnt = params['last_day_view']
  15. share_cnt = params['last_day_share']
  16. category = params['category']
  17. dt = params['dt']
  18. except Exception as e:
  19. response = {
  20. "error": str(e),
  21. "message": "params check failed",
  22. "requestId": request_id
  23. }
  24. return response
  25. insert_sql = f"""
  26. INSERT INTO {daily_video}
  27. (video_id, uid, title, return_cnt, view_cnt, share_cnt, category, ros, rov, dt)
  28. values
  29. (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s);
  30. """
  31. try:
  32. await db_client.asyncInsert(
  33. insert_sql,
  34. params=(
  35. video_id,
  36. uid,
  37. title,
  38. return_cnt,
  39. view_cnt,
  40. share_cnt,
  41. category,
  42. float(int(return_cnt) / int(view_cnt)) if int(view_cnt) > 0 else 0,
  43. float(int(return_cnt) / int(share_cnt)) if int(share_cnt) > 0 else 0,
  44. dt
  45. )
  46. )
  47. response = {
  48. "info": "success",
  49. "requestId": request_id
  50. }
  51. except Exception as e:
  52. response = {
  53. "error": str(e),
  54. "requestId": request_id
  55. }
  56. return response