PublicAnalysisHandler.py 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120
  1. from handlers.HandlerBase import BaseHandler
  2. from model.log import logger
  3. from data_manage.public_analysis import *
  4. import time
  5. log = logger()
  6. class BookRank(BaseHandler):
  7. def post(self):
  8. arg = self.get_args()
  9. print(arg)
  10. start=arg.get("start",self.get_n_days(0))
  11. end=arg.get("end",self.get_n_days(0))
  12. date_range=arg.get("date_range")
  13. book=arg.get("book")
  14. stage=arg.get("stage")
  15. type=arg.get("type")
  16. page = arg.get("page",1)
  17. page_size = arg.get("page_size",30)
  18. order_by = arg.get("order_by", 'cost')
  19. order = arg.get("order", 'desc')
  20. if date_range:
  21. end=self.get_n_days(0)
  22. start=self.get_n_days(-int(date_range)+1)
  23. data,total=book_rank(start,end,book,stage,type,page,page_size,order_by,order)
  24. self.write_json(data=data,total=total)
  25. class BookTrend(BaseHandler):
  26. def post(self):
  27. arg = self.get_args()
  28. print(arg)
  29. start=arg.get("start",self.get_n_days(-29))
  30. end=arg.get("end",)
  31. date_range=arg.get("date_range")
  32. book=arg.get("book")
  33. type=arg.get("type")
  34. platform=arg.get("platform")
  35. page = arg.get("page",1)
  36. page_size = arg.get("page_size",30)
  37. order_by = arg.get("order_by", 'dt')
  38. order = arg.get("order", 'desc')
  39. if date_range:
  40. end=self.get_n_days(0)
  41. start=self.get_n_days(-int(date_range)+1)
  42. data,total,total_data=book_trend(start,end,book,type,platform,page,page_size,order_by,order)
  43. self.write_json(data=data,total=total,total_data=total_data)
  44. class BookOverview(BaseHandler):
  45. def post(self):
  46. if not self._au:
  47. self.write_fail(msg='auth error')
  48. else:
  49. arg = self.get_args()
  50. print(arg)
  51. start = arg.get("start")
  52. end = arg.get("end",)
  53. book = arg.get("book")
  54. type = arg.get("type")
  55. page = arg.get("page")
  56. date_range = arg.get("date_range")
  57. page_size = arg.get("page_size")
  58. order_by = arg.get("order_by", 'cost')
  59. order = arg.get("order", 'desc')
  60. if date_range:
  61. end = self.get_n_days(0)
  62. start = self.get_n_days(-int(date_range)+1)
  63. data, total = book_overview(start, end, book, type, page, page_size, order_by, order)
  64. if arg.get("download"):
  65. self.write_download('BookOver_'+str(int(time.time())), data)
  66. self.write_json(data=data, total=total)
  67. class PitcherOverview(BaseHandler):
  68. def post(self):
  69. arg = self.get_args()
  70. print(arg)
  71. start = arg.get("start")
  72. end = arg.get("end")
  73. page = arg.get("page")
  74. page_size = arg.get("page_size")
  75. order_by = arg.get("order_by", 'cost')
  76. order = arg.get("order", 'desc')
  77. pitcher = arg.get("pitcher")
  78. date_range = arg.get("date_range")
  79. if date_range:
  80. end = self.get_n_days(0)
  81. start = self.get_n_days(-int(date_range)+1)
  82. data, total = pitcher_overview(start, end, pitcher, page, page_size, order_by, order)
  83. if arg.get("download"):
  84. self.write_download('BookOver_'+str(int(time.time())), data)
  85. self.write_json(data=data, total=total)
  86. class BossPanelSummary(BaseHandler):
  87. def post(self):
  88. arg = self.get_args()
  89. start = arg.get("start")
  90. end = arg.get("end")
  91. page = arg.get("page")
  92. page_size = arg.get("page_size")
  93. order_by = arg.get("order_by")
  94. order = arg.get("order")
  95. pitcher = arg.get("pitcher")
  96. date_range = arg.get("date_range")
  97. type = arg.get("type")
  98. stage = arg.get("stage")
  99. download = arg.get("download")
  100. if date_range:
  101. end = self.get_n_days(0)
  102. start = self.get_n_days(-int(self.date_range) + 1)
  103. data, total = boss_panel_summary(start, end, pitcher, type,
  104. stage, page, page_size, order_by, order)
  105. if download:
  106. self.write_download(str(int(time.time())), data)
  107. self.write_json(data=data, total=total)