123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226 |
- from handlers.HandlerBase import BaseHandler
- from data_manage.pitcher_panel import *
- import time
- from data_manage.operate import get_user_name_by_id
- log = logger()
- class PitcherPanelChannel(BaseHandler):
- def post(self):
- if not self._au:
- self.write_fail(msg='auth error')
- else:
- args = self.get_args()
- print(args)
- pitcher = args.get("pitcher")
- channel = args.get("channel")
- start = args.get("start", self.get_n_days(0))
- end = args.get("end", self.get_n_days(0))
- page = args.get("page")
- page_size = args.get("page_size")
- order_by = args.get("order_by", 'cost')
- order = args.get("order", 'desc')
- data_range = args.get('date_range')
- if data_range:
- end = self.get_n_days(0)
- start = self.get_n_days(-int(args['date_range']) + 1)
- data, total = get_pitcher_panel_channel(pitcher, channel, start, end, page, page_size, order_by, order)
- self.write_json(data=data, total=total)
- class PitcherPanelDaily(BaseHandler):
- def post(self):
- if not self._au:
- self.write_fail(msg='auth error')
- else:
- args = self.get_args()
- print(args)
- user_id = args.get('user_id')
- pitcher = args.get("pitcher", get_user_name_by_id(user_id))
- start = args.get("start", self.get_n_days(-7))
- end = args.get("end")
- page = args.get("page")
- page_size = args.get("page_size")
- order_by = args.get("order_by", 'date')
- order = args.get("order", 'desc')
- data, total, total_data = get_pitcher_panel_daily(pitcher, start, end, page, page_size, order_by, order)
- self.write_json(data=data, total=total, total_data=total_data)
- class PitcherPanelOverview(BaseHandler):
- def post(self):
- if not self._au:
- self.write_fail(msg='auth error')
- else:
- args = self.get_args()
- user_id = args.get("user_id")
- pitcher = args.get("pitcher", get_user_name_by_id(user_id))
- data = get_pitcher_panel_overview(pitcher)
- self.write_json(data)
- class ChannelOverview(BaseHandler):
- def post(self):
- if not self._au:
- self.write_fail(msg='auth error')
- else:
- args = self.get_args()
- user_id = args.get('user_id')
- channel = args.get("channel")
- pitcher = args.get("pitcher")
- start = args.get("start", self.thisday)
- end = args.get("end")
- stage = args.get("stage")
- page = args.get("page")
- book = args.get('book')
- page_size = args.get("page_size")
- order_by = args.get("order_by", 'date')
- order = args.get("order", 'desc')
- data, total, total_data = get_channel_overview(user_id, channel, pitcher, stage, book, start, end, page,
- page_size, order_by, order)
- if args.get("download"):
- self.write_download(str(int(time.time())), data)
- else:
- self.write_json(data=data, total=total, total_data=total_data)
- class ChannelAgainOrderTrend(BaseHandler):
- def post(self):
- if not self._au:
- self.write_fail(msg='auth error')
- else:
- args = self.get_args()
- print(args)
- channel = args.get("channel")
- date = args.get("date", self.get_n_days(-8))
- if channel:
- data = get_channel_again_order_trend(channel, date)
- self.write_json(data)
- else:
- self.write_json([])
- class ChannelActive(BaseHandler):
- def post(self):
- if not self._au:
- self.write_fail(msg='auth error')
- else:
- args = self.get_args()
- print(args)
- user_id = args.get('user_id')
- pitcher = args.get("pitcher")
- channel = args.get("channel")
- start = args.get("start", self.thisday)
- end = args.get("end")
- page = args.get("page", 1)
- page_size = args.get("page_size", 10)
- order_by = args.get("order_by", 'date')
- order = args.get("order", 'desc')
- data, total = get_channel_active(user_id, channel, pitcher, start, end, page, page_size, order_by, order)
- self.write_json(data=data, total=total)
- class ChannelOrderTrend(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')
- pitcher = arg.get("pitcher")
- channel = arg.get("channel")
- start = arg.get("start", self.get_n_days(-30)) if channel else arg.get("start", self.thisday)
- end = arg.get("end")
- page = arg.get("page")
- page_size = arg.get("page_size")
- order_by = arg.get("order_by", 'date')
- order = arg.get("order", 'desc')
- data, total, total_data = get_channel_order_trend(user_id, channel, pitcher, start, end, page, page_size,
- order_by, order)
- if arg.get("download"):
- self.write_download("channelTrend_" + str(int(time.time())), data)
- else:
- self.write_json(data=data, total=total, total_data=total_data)
- class ChannelSummary(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')
- channel = arg.get('channel')
- pitcher = arg.get('pitcher')
- page = arg.get("page")
- page_size = arg.get("page_size")
- location = arg.get('location')
- order_by = arg.get("order_by", 'total_cost')
- order = arg.get("order", 'desc')
- state = arg.get("state")
- start = arg.get("start")
- end = arg.get("end")
- data, total, total_data = get_channel_summary(user_id, channel, pitcher, page, page_size, order_by, order,
- state, location, start, end)
- if arg.get("download"):
- self.write_download("channel_" + str(int(time.time())), data)
- else:
- self.write_json(data=data, total=total, total_data=total_data)
- class ChannelPitcherSummary(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')
- channel = arg.get('channel')
- pitcher = arg.get('pitcher')
- page = arg.get("page")
- page_size = arg.get("page_size")
- location = arg.get('location')
- order_by = arg.get("order_by", 'total_cost')
- order = arg.get("order", 'desc')
- state = arg.get("state")
- start = arg.get("start")
- end = arg.get("end")
- data, total, total_data = get_pitcher_channel_summary(user_id, channel, pitcher, page, page_size, order_by,
- order, state, location, start, end)
- if arg.get("download"):
- self.write_download("channel_" + str(int(time.time())), data)
- else:
- self.write_json(data=data, total=total, total_data=total_data)
- class PitcherTrend(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:
- pitcher = arg.get('pitcher', get_user_name_by_id(user_id))
- start = arg.get("start", self.thisday)
- 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')
- data, total, total_data = get_pitcher_trend(pitcher, start, end, page, page_size, order_by, order)
- self.write_json(data=data, total=total, total_data=total_data)
- else:
- self.write_fail(msg='user_id not found')
|