def get_table(search_start_date,
              search_end_date,
              player_min_lv,
              player_max_lv,
              register_start_date=None,
              register_end_date=None,
              cur_server=-1):
    """
        获取展示表格
        register_start_date 注册开始时间
        register_end_date 注册结束时间
        search_start_date 查询开始时间
        search_end_date 查询结束时间
    """
    search_days = (search_end_date - search_start_date).days + 1

    table_result = []
    for i in xrange(search_days):
        cur_date = search_start_date + datetime.timedelta(days=i)

        new_log_lst = dat_log_util.read_file_with_single_day(
            "USER_DETAIL", cur_date, cur_server)
        user_level_state = dat_log_util.read_file_with_single_day(
            "USER_LEVEL_STATE", cur_date, cur_server)

        if new_log_lst and user_level_state:
            # 到此时的总用户数
            by_this_time_uid_num = len(new_log_lst)
            # 登录用户数
            today_login_uid_num = user_level_state[0]
            # 新增用户数
            today_new_uid_num = user_level_state[1]
            # 等级用户数
            level_user_num_lst = []
            for _lv in xrange(player_min_lv, player_max_lv + 1):
                # 计算等级用户数
                _user_detail_dict = new_log_lst
                if register_start_date and register_end_date:
                    user_num = len([
                        _dat['uid'] for _dat in _user_detail_dict.values()
                        if _dat['level'] == _lv and _dat['server_id'] > 0
                        and _dat['platform_id'] > 0 and register_start_date <=
                        _dat['install'] <= register_end_date
                    ])
                else:
                    user_num = len([
                        _dat['uid'] for _dat in _user_detail_dict.values()
                        if _dat['level'] == _lv
                    ])
                # 插入数据
                level_user_num_lst.append(user_num)
            row = [
                cur_date.strftime('%Y-%m-%d'), by_this_time_uid_num,
                today_login_uid_num, today_new_uid_num
            ]
            row.extend(level_user_num_lst)
            table_result.append(row)
    return table_result
Beispiel #2
0
def get_table(search_start_date,
              search_end_date,
              register_start_date=None,
              register_end_date=None,
              channel_id=-1,
              cur_server_id=-1):
    """
        获取展示表格
        register_start_date 注册开始时间
        register_end_date 注册结束时间
        search_start_date 查询开始时间
        search_end_date 查询结束时间
    """
    # 获取搜索区间日志
    new_log_lst = []
    total_days = (search_end_date - search_start_date).days + 1
    for i in xrange(total_days):
        search_date = search_start_date + datetime.timedelta(days=i)
        new_log = dat_log_util.read_file_with_single_day(
            "TONIC", search_date, cur_server_id)
        if new_log:
            new_log.insert(0, search_date.strftime('%m/%d/%Y'))
            new_log[4] = str(new_log[4] * 100) + "%"
            new_log_lst.append(new_log)
    # new_log_lst = dat_log_util.read_file_with_user_level_state("TONIC", search_start_date, search_end_date, cur_server_id)
    # for index, new_log in enumerate(new_log_lst):
    #     cur_date = search_start_date + datetime.timedelta(days=index)
    #     new_log.insert(0, cur_date.strftime('%m/%d/%Y'))
    #     new_log[4] = str(new_log[4] * 100)+"%"
    return new_log_lst
def get_table(search_start_date, search_end_date, cur_server_id=-1):
    """
        获取展示表格
        register_start_date 注册开始时间
        register_end_date 注册结束时间
        search_start_date 查询开始时间
        search_end_date 查询结束时间
    """
    # 获取搜索区间日志
    new_log_lst = []
    total_days = (search_end_date-search_start_date).days+1
    for i in xrange(total_days):
        search_date = search_start_date+datetime.timedelta(days=i)
        new_log = dat_log_util.read_file_with_single_day("FINGER_GUESS", search_date, cur_server_id)
        if new_log:
            new_log.insert(0, search_date.strftime('%m/%d/%Y'))
            new_log[4] = str(new_log[4] * 100)+"%"
            new_log_lst.append(new_log)

    # for index, new_log in enumerate(new_log_lst):
    #     cur_date = search_start_date + datetime.timedelta(days=index)
    #     new_log.insert(0, cur_date.strftime('%m/%d/%Y'))
    #     new_log[4] = str(new_log[4] * 100)+"%"

    return new_log_lst
def get_table(search_start_date, search_end_date, player_min_lv, player_max_lv, register_start_date=None, register_end_date=None, cur_server=-1):
    """
        获取展示表格
        register_start_date 注册开始时间
        register_end_date 注册结束时间
        search_start_date 查询开始时间
        search_end_date 查询结束时间
    """
    search_days = (search_end_date - search_start_date).days + 1

    table_result = []
    for i in xrange(search_days):
        cur_date = search_start_date + datetime.timedelta(days=i)

        new_log_lst = dat_log_util.read_file_with_single_day("USER_DETAIL", cur_date, cur_server)
        user_level_state = dat_log_util.read_file_with_single_day("USER_LEVEL_STATE", cur_date, cur_server)

        if new_log_lst and user_level_state:
            # 到此时的总用户数
            by_this_time_uid_num = len(new_log_lst)
            # 登录用户数
            today_login_uid_num = user_level_state[0]
            # 新增用户数
            today_new_uid_num = user_level_state[1]
            # 等级用户数
            level_user_num_lst = []
            for _lv in xrange(player_min_lv, player_max_lv + 1):
                # 计算等级用户数
                _user_detail_dict = new_log_lst
                if register_start_date and register_end_date:
                    user_num = len([_dat['uid'] for _dat in _user_detail_dict.values() if _dat['level'] == _lv and _dat['server_id'] > 0 and _dat['platform_id'] > 0 and register_start_date <= _dat['install'] <= register_end_date])
                else:
                    user_num = len([_dat['uid'] for _dat in _user_detail_dict.values() if _dat['level'] == _lv])
                # 插入数据
                level_user_num_lst.append(user_num)
            row = [cur_date.strftime('%Y-%m-%d'), by_this_time_uid_num, today_login_uid_num, today_new_uid_num]
            row.extend(level_user_num_lst)
            table_result.append(row)
    return table_result