import os import shutil import re import sys import json from enum import Enum, IntEnum #bdc日志类型 class BdcType(IntEnum): # 玩家下线时上传存档数据;0点在线玩家导出截至0点角色存档数据全部上传 UserInfo = 10002, ChargeInfo = 10003, UserLogin = 10004, CreateRole = 10005, RoleLogin = 10006, RoleLogout = 10007, # 在线统计 OnlineScene = 10010, #获取代币 GetMoney = 10008, #消耗代币 RemoveMoney = 10009, #新手引导 NewGuide = 10011, #添加道具 GetItem = 10013, #消耗道具 RemoveItem = 10014, #商店购物 ShopBuy = 10015, #抽奖 Lottery = 10016, #抽奖 ExpChange = 10017, #接收任务 ReceiveQuest = 10018, #完成任务 FinishQuest = 10019, #PVE 进入 PVEEnter = 10020, #PVE 完成 PVEComplete = 10021, #抽紫卡 DrawPurple = 10022, # 以下是运营方提出的日志, 不在http:#bdc4.yingxiong.com的文档中 # 通行证点数升级 PasscardPointLvUp = 40002, # 活动子任务完成 ActivityTaskComplete = 40005, # 开服活动领取奖励 GetActivityPointReward = 40007, # 开服活动获得积分 AddActivityPoint = 40008, #英雄快照 HerosSnapshot = 40001, # 地牢战斗 DungeonBattle = 40003, # 地牢退出 DungeonExit = 40004, BdcHead = { "UserInfo" : [ "role_name", "role_level", "vip_level", "sex", "free_diamond_balance", "donate_diamond_balance", "charge_diamond_balance", "phy_balance", "month_card_balance", "register_ip", "accountregister_time", "userregister_time", "userlast_active_time", "total_charge", "union_id", "bag_info", "currency_info", "character_id", "tower_info", "boss_info", "battle_info", ], "ChargeInfo": [ "role_name", "role_level", "vip_level", "order_id", "game_order_id", "product_id", "product_type", "total_charge", "amount", "unit", "pay_time", "get_time", "extra_get1", "extra_get2", "money_type", "payment_method", ], "UserLogin":[ "user_balance", "ads_json", ], "CreateRole":[ "character_id", "role_name", "role_extra", ], "RoleLogin":[ "free_diamond_balance", "donate_diamond_balance", "charge_diamond_balance", "gold_balance", "login_situation", "role_level", "vip_level", "ads_json", ], "RoleLogout":[ "role_level", "vip_level", "free_diamond_balance", "donate_diamond_balance", "charge_diamond_balance", "gold_balance", "final_scene", "final_action", "online_time", ], "GetMoney":[ "role_level", "vip_level", "before_balance", "after_balance", "money_type", "reason_id", "reason_info", ], "RemoveMoney":[ "role_level", "vip_level", "before_balance", "after_balance", "money_type", "reason_id", "reason_info", ], "GetItem":[ "role_level", "vip_level", "product_type", "product_id", "product_num", "before_balance", "after_balance", "reason_id", "reason_info", "product_guid", "binding_state", "product_info", ], "RemoveItem":[ "role_level", "vip_level", "product_type", "product_id", "product_num", "before_balance", "after_balance", "reason_id", "reason_info", "product_guid", "binding_state", "product_info", ], "ShopBuy":[ "role_level", "vip_level", "product_id", "product_num", "money_type", "buy_cost", "shop_type", "cost_info", ], "PVEEnter":[ "role_level", "pve_type", "pve_id", "pve_name", "team_id", "lineup", ], "PVEComplete":[ "role_level", "pve_type", "pve_subtype", "pve_id", "pve_name", "team_id", "lineup", "team_info", "iswin", "complete_type", "fight_time", "grade", ], "Lottery":[ "role_level", "vip_level", "action_type", "action_subtype", "cost_Id", "draw_times", "rewards_info", "money_type", "cost_Id", "buy_cost", ], "DrawPurple":[ "role_level", "vip_level", "action_type", "action_subtype", "cost_Id", "draw_times", "purple_num", "realpurple_num", ], "ExpChange":[ "point", "point_before", "point_after", "duration_time", ], "ReceiveQuest":[ "role_level", "task_type", "task_id", ], "FinishQuest":[ "role_level", "task_type", "task_id", "rewards_info", ], "ActivityTaskComplete":[ "activity_type", "activity_id", "task_id", ], "AddActivityPoint":[ "activity_type", "activity_id", "incr", "after_incr", "reason", "subreason", ], "GetActivityPointReward":[ "activity_type", "activity_id", "reward_point", "reward_id", ], "HerosSnapshot":[ "character_id", "heros_info", ], "DungeonBattle":[ "dungeon_id", "dungeon_diffculty", "dungeon_layerindex", "main_mainlandid", "dungeon_mainlandid", "dungeon_deathcount", "dungeon_result", ], "DungeonExit":[ "dungeon_id", "dungeon_diffculty", "dungeon_layerindex", "main_mainlandid", "dungeon_deathcount", ] } BdcComHead = [ "logtime", "timeStamp", "event_id", "user_id", "open_id", "role_id", "role_key", "server_id", "client_os", "device_id", "user_ip", "channel_id", "app_channel_id", "buess_time", "transaction_id", ]