from handlers.HandlerBase import BaseHandler
from model.DataBaseUtils import MysqlUtils
import json
import requests
from data_manage.analysis_select import *
from model.DataBaseUtils import MysqlUtils
db = MysqlUtils()


class ChannelAnalysisHandler(BaseHandler):
    APP_MAP = {
        "channel_analysis_select": channel_analysis_select,
        "channel_analysis_select_daily": channel_analysis_select_daily,

    }


    def post(self):

        arg = self.get_args()
        print(arg)
        try:
            data = self.run(arg)
            print(data)

            self.write_json(data=data.get("data"),total=data.get('total',1),total_data=data.get('total_data',{}))
        except Exception as e:
            print(e)
            self.write_fail()

    def run(self, arg):

        app = self.request.full_url().split('/')[-1]
        return self.run_function(self.APP_MAP[app], arg)

    def run_function(self, func, arg):
        return func(arg)