Ejemplo n.º 1
0
def delete_activity():
    _activity = mongo.re_pos_int(
        input("删什么活动:1.星星银行,2.宝箱激励,3.娃娃机,4.限时活动,5.玩具之家,6组队任务,7.迎新会> "))
    if _activity == 1:
        delete_target("inspire_bank_user")

    elif _activity == 2:
        delete_target("inspire_user_job")

    elif _activity == 3:
        delete_target("prize_claw_user", "prize_claw_team",
                      "prize_claw_not_full_team")

    elif _activity == 4:
        delete_target("time_limit_user", "time_limit_rank_score",
                      "time_limit_rank_backup", "time_limit_rank",
                      "time_limit_garden_war")

    elif _activity == 5:
        delete_target("toy_user_job")

    elif _activity == 6:
        delete_target("new_mission_user")

    elif _activity == 7:
        delete_target("new_task_user")

    else:
        _activity = mongo.re_pos_int(input("输错了,重新输入> "))
        Del_data(_activity)

    pass
Ejemplo n.º 2
0
def All_stars(udata, ulevel, revised):
    _level = mongo.re_pos_int(input('最大关卡数> '))
    udata['r'] = int(_level)
    # 金卡座?
    isGold = mongo.re_pos_int(input('1.关卡全金;2.非金卡座> '))
    if isGold == 1:
        for i in range(1, int(_level) + 1):
            ulevel['a'][str(i)] = "400000_3_1"
    else:
        ulevel['a']['1'] = "400000_3_1"
        for i in range(2, int(_level) + 1):
            ulevel['a'][str(i)] = "400000_3"
    revised = revise(revised, ulevel, udata)
    return revised
    print('修改成功')
    time.sleep(1)
Ejemplo n.º 3
0
def confilict(inp, udata, target):
    if inp == 1:
        # 字符串z1转数组后改第4位的年份
        Str_z1 = udata['z1']
        list_z1 = list(Str_z1)
        list_z1[3] = str(random.randint(0, 9))
        Str_z1 = ''.join(list_z1)

        # 生成随机date,覆盖原有的'w'字段
        date_1 = '2018-01-11T'
        date_2 = str(random.randint(0, 2)) + str(random.randint(0, 3))
        date_3 = ':00:00.000Z'
        dateStr = date_1 + date_2 + date_3
        myDatetime = parser.parse(dateStr)

        # 更新
        udata['w'] = myDatetime
        udata['z1'] = Str_z1
        result = db['user_data'].update_one(target, {'$set': udata})

        inp = mongo.re_pos_int(input('输入1>模拟一次冲突~ 其它>退出:'))
        confilict(inp, udata, target)
    else:
        exit(1)
    pass
Ejemplo n.º 4
0
def delete_level(udata, ulevel, revised):

    _level = mongo.re_pos_int(input('要删到多少关> '))
    udata['r'] = int(_level)
    if int(_level) == 0:
        ulevel['a'] = {}
    else:
        ulevel['a'] = {}
        ulevel['a'][str(_level)] = "400000_3"
    revised = revise(revised, ulevel, udata)
    print('删除成功')
    time.sleep(1)
    return revised
Ejemplo n.º 5
0
def award(COLLECTION_udata):
    # 模拟发奖
    db_coll_udata = db[COLLECTION_udata]
    _id = input('输入ID> ')
    int_id = {'_id': re_pos_int(_id)}
    user_find = db_coll_udata.find_one(int_id)
    if user_find:
        session = input('输入届数> ')
        user_find['x']['81'] = session
        user_find['x']['80'] = "1"

        result = db_coll_udata.update_one(int_id, {'$set': user_find})
        print('发奖第%s届第1名,login可见弹窗' % (session))
    else:
        print('未找到此ID,溜了溜了')
        exit(1)
Ejemplo n.º 6
0
def delete_target(COLLECTION, *depends):

    db_coll = db[COLLECTION]
    _id = input("删哪个ID> ")
    target = {'_id': re_pos_int(_id)}
    result_find = db_coll.find_one(target)
    # print(db_coll.find()[0])

    if result_find:
        result = db_coll.delete_one(target)
        print("删除成功")
        time.sleep(1)
    else:
        print("未找到此ID,重新输入> ")
        delete_target(COLLECTION)

    for depend in depends:

        db_coll = db[depend]
        depend_find = db_coll.find_one(target)

        # 删除排行榜等表单中此UserID的相关数据(找到了就删,找不到进娃娃机逻辑)
        # 不够严谨,限时活动有的表单没找到东西也会走elif
        if depend_find:
            result = db_coll.delete_one(target)

        # 娃娃机活动,teamID=日期+UserID,删除team中个人信息
        # 'b'字段是每个id的队伍id
        elif result_find['b'] != 0:

            # 队伍相关信息
            target_team = {'_id': result_find['b']}
            find_team = db_coll.find_one(target_team)
            # 能找到队伍就是娃娃机活动,找不到就是其它不用动的活动数据(比如限时活动其它depends)
            if find_team:
                # 一个人一队就删队,否则只删自己
                if isinstance(find_team['a'], dict):
                    if len(find_team['a']) != 1:
                        del find_team['a'][_id]
                        result = db_coll.update_one(target_team,
                                                    {'$set': find_team})
                    else:
                        result = db_coll.delete_one(find_team)
                # 单人则同时再删掉not_full队伍
                elif find_team['a'] == 1:
                    result = db_coll.delete_one(find_team)
Ejemplo n.º 7
0
def clear_medal(COLLECTION_udata):
    # 清除用户后端头像、奖章等信息
    db_coll_udata = db[COLLECTION_udata]
    _id = input('输入ID> ')
    int_id = {'_id': re_pos_int(_id)}
    user_find = db_coll_udata.find_one(int_id)
    if user_find:
        user_find['p1'] = []
        user_find['p2'] = []
        user_find['p3'] = []
        user_find['p4'] = []
        user_find['pp1'] = []
    else:
        print('未找到此ID,溜了溜了')
        exit(1)

    result = db_coll_udata.update_one(int_id, {'$set': user_find})
    print('清除成功, 删包重装无头像、勋章')
Ejemplo n.º 8
0
def new_task():
    _mission = mongo.re_pos_int(
        input(
            "指定任务:1.过2关、2.2个星星、3.1000红糖果、4.买礼包、5.买金砖、6.40个特效\n7.3个关卡内道具、8.关卡前道具、9.花100金砖、10.消耗50彩虹\n11.1500蓝糖果、12.1100黄糖果、13.1200绿糖果、14.1300橙糖果、15.消60硬糖\n21.玩具之家、22.限时活动、23.娃娃机:"
        ))
    utask = db['new_mission_user'].find_one(target)
    # 修改d字段下字符串a的首位,并清除任务信息
    _missionTime = str(utask['d']['e'])
    _newMisson = str(_mission) + '_' + _missionTime
    utask['d']['a'] = str(_newMisson)
    utask['d']['b'] = None
    utask['d']['f'], utask['d']['g'], utask['d']['i'] = 0, 0, 0
    utask['d']['h'], utask['d']['k'] = 1, 1
    utask['d']['j'] = 2

    result = db['new_mission_user'].update_one(target, {'$set': utask})
    print("修改成功")
    time.sleep(1)
Ejemplo n.º 9
0
    _id = input('输入ID> ')
    int_id = {'_id': re_pos_int(_id)}
    user_find = db_coll_udata.find_one(int_id)
    if user_find:
        user_find['p1'] = []
        user_find['p2'] = []
        user_find['p3'] = []
        user_find['p4'] = []
        user_find['pp1'] = []
    else:
        print('未找到此ID,溜了溜了')
        exit(1)

    result = db_coll_udata.update_one(int_id, {'$set': user_find})
    print('清除成功, 删包重装无头像、勋章')


# str_choice_oly = input('输入:1>删除活动相关所有用户的后台数据;\n      2>清除用户后台头像、勋章、套装信息;\n      3>模拟一次活动发奖弹窗> ')
choice_oly = re_pos_int(
    input(
        '输入:1>删除活动相关所有用户的后台数据;\n      2>清除用户后台头像、勋章、套装信息;\n      3>模拟一次活动发奖弹窗> '
    ))
if choice_oly == 1:
    remove_all("time_limit_user", "time_limit_rank_score",
               "time_limit_rank_backup", "time_limit_rank",
               "time_limit_garden_war")
elif choice_oly == 2:
    clear_medal('user_data')
elif choice_oly == 3:
    award('user_data')
Ejemplo n.º 10
0
def data_confilict(udata, target):
    inp = mongo.re_pos_int(input('输入1>模拟一次冲突; 其它>退出: '))
    confilict(inp, udata, target)
Ejemplo n.º 11
0
COLLECTION_LEVEL = "user_level"
db_coll_data = dbData[COLLECTION_DATA]
db_coll_level = dbData[COLLECTION_LEVEL]

_id = input("改哪个ID:")
_level = input("最大关卡数> ")

# 检索目标并修改关卡数据
target = {'_id': int(_id)}
udata = db_coll_data.find_one(target)
# 用户最大关卡数字段
udata['r'] = int(_level)

ulevel = db_coll_level.find_one(target)
ulevel['a'] = {}

isGold = input('1.关卡全金;2.非金卡座> ')
int_isGold = re_pos_int(isGold)
if int_isGold == 1:
    for i in range(1, int(_level) + 1):
        ulevel['a'][str(i)] = "400000_3_1"
else:
    ulevel['a']['1'] = "400000_3_1"
    for i in range(2, int(_level) + 1):
        ulevel['a'][str(i)] = "400000_3"

result = db_coll_data.update_one(target, {'$set': udata})
result = db_coll_level.update_one(target, {'$set': ulevel})

print("修改成功")
time.sleep(1)