from handlers.HandlerBase import BaseHandler from model.log import logger from data_manage.public_analysis import * import time from model.DateUtils import DateUtils from data_manage.operate import get_user_name_by_id log = logger() class BookRank(BaseHandler): def post(self): if not self._au: self.write_fail(msg='auth error') else: arg = self.get_args() print(arg) start=arg.get("start",self.get_n_days(0)) end=arg.get("end",self.get_n_days(0)) date_range=arg.get("date_range") book=arg.get("book") stage=arg.get("stage") type=arg.get("type") page = arg.get("page",1) page_size = arg.get("page_size",30) order_by = arg.get("order_by", 'cost') order = arg.get("order", 'desc') if date_range: end=self.get_n_days(0) start=self.get_n_days(-int(date_range)+1) data,total=book_rank(start,end,book,stage,type,page,page_size,order_by,order) self.write_json(data=data,total=total) class BookTrend(BaseHandler): def post(self): if not self._au: self.write_fail(msg='auth error') else: arg = self.get_args() print(arg) start=arg.get("start",self.get_n_days(-29)) end=arg.get("end",) date_range=arg.get("date_range") book=arg.get("book") type=arg.get("type") platform=arg.get("platform") page = arg.get("page",1) page_size = arg.get("page_size",30) order_by = arg.get("order_by", 'dt') order = arg.get("order", 'desc') if date_range: end=self.get_n_days(0) start=self.get_n_days(-int(date_range)+1) data,total,total_data=book_trend(start,end,book,type,platform,page,page_size,order_by,order) self.write_json(data=data,total=total,total_data=total_data) class BookOverview(BaseHandler): def post(self): if not self._au: self.write_fail(msg='auth error') else: arg = self.get_args() print(arg) start = arg.get("start") end = arg.get("end",) book = arg.get("book") type = arg.get("type") page = arg.get("page") date_range = arg.get("date_range") page_size = arg.get("page_size") order_by = arg.get("order_by", 'cost') order = arg.get("order", 'desc') if date_range: end = self.get_n_days(0) start = self.get_n_days(-int(date_range)+1) data, total = book_overview(start, end, book, type, page, page_size, order_by, order) if arg.get("download"): self.write_download('BookOver_'+str(int(time.time())), data) self.write_json(data=data, total=total) class PitcherOverview(BaseHandler): def post(self): if not self._au: self.write_fail(msg='auth error') else: arg = self.get_args() print(arg) user_id = arg.get('user_id') if user_id: start = arg.get("start") end = arg.get("end") page = arg.get("page") page_size = arg.get("page_size") order_by = arg.get("order_by", 'cost') order = arg.get("order", 'desc') pitcher = arg.get("pitcher") data, total = pitcher_overview(user_id,start, end, pitcher, page, page_size, order_by, order) if arg.get("download"): self.write_download('BookOver_'+str(int(time.time())), data) self.write_json(data=data, total=total) else: self.write_fail(msg='user_id not found') class BossPanelSummary(BaseHandler): def post(self): if not self._au: self.write_fail(msg='auth error') else: arg = self.get_args() print(arg) user_id = arg.get("user_id") start = arg.get("start",self.get_n_days(-30)) end = arg.get("end") page = arg.get("page") page_size = arg.get("page_size") order_by = arg.get("order_by",'dt') order = arg.get("order",'desc') pitcher = arg.get("pitcher") type = arg.get("type") stage = arg.get("stage") download = arg.get("download") data, total = boss_panel_summary(user_id,start, end, pitcher, type, stage, page, page_size, order_by, order) if download: self.write_download(str(int(time.time())), data) self.write_json(data=data, total=total) class ImageRank(BaseHandler): def post(self): if not self._au: self.write_fail(msg='auth error') else: arg = self.get_args() start = arg.get("start") end = arg.get("end") page = arg.get("page",1) page_size = arg.get("page_size",10) order_by = arg.get("order_by",'cost') order = arg.get("order",'desc') type = arg.get("type") book = arg.get('book') data, total = image_rank(start, end, type,book, page, page_size, order_by, order) self.write_json(data=data, total=total) """素材排行榜""" class AdvertisementRank(BaseHandler): def post(self): if not self._au: self.write_fial(msg='auth error') else: du = DateUtils() arg = self.get_args() user_id = arg.get('user_id') start = arg.get("start",du.getNow()) end = arg.get("end") page = arg.get("page",1) page_size = arg.get("page_size") order_by = arg.get("order_by", 'cost') order = arg.get("order", 'desc') type =arg.get("type") book =arg.get("book") channel =arg.get('channel') pitcher = arg.get('pitcher') has_order = arg.get("has_order") data, total,total_data = advertisement_rank(user_id,start, end, type,page,page_size,order,order_by,book,channel,pitcher,has_order) self.write_json(data=data, total=total,total_data=total_data)