Exemplo n.º 1
0
def player_shutup(request, player_id=0):
    req_type = 102
    result_msgs = {-1: '未知错误', 0: '成功'}
    result_code = -1
    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))

    if player_id == 0:
        player_id = int(request.POST.get('player_id', '0'))

    is_ajax = request.GET.get('ajax', False)

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    time_len = int(request.GET.get('time', '1800'))

    req_params = 'req_type=%d&player_id=%s&server_id=%d&time=%d' % (
        req_type, player_id, server_id, time_len)
    err_msg = ''
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        if result['code'] == 0:
            result_code = result['content'][0]
        write_gm_log(request,
                     [req_type, server_id, player_id, result_code, time_len])
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 2
0
def seience_modify(request, player_id=0):
    
    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))
    
    req_type = 131
    result_msgs = {-1:'未知错误', 0:'成功', 1:'更新信息中存在不允许更新的布阵科技ID'}
    result_code = -1
    
    #modify_science_info = json.dumps(request.POST)
#    modify_science_info = json.dumps(modify_science_info)
    
    log_param = {}
    request_param = do_filter_seience_param(request.POST, get_seience_info(player_id), log_param)
    request_param = json.dumps(request_param, ensure_ascii=False)
    log_param = json.dumps(log_param, ensure_ascii=False)
    
    err_msg = ''
    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id', server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d&modify_science_info=%s' % (req_type, player_id, server_id, request_param)
    try:
        result = http_post(game_server_url.GM_PLAYER_URL, req_params, timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)
        if result['code'] == 0:
            result_code = result['content'][0]
        
        write_gm_log(request, [req_type, server_id, player_id, result_code, log_param])
    except Exception, e:
        err_msg = '发生错误:%s!' % e  
Exemplo n.º 3
0
def equip_del(request, player_id=0):
    req_type = 112
    result_msgs = {-1: '未知错误', 0: '成功'}
    result_code = -1

    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    equip_id = int(request.GET.get('equip_id', '0'))
    err_msg = ''
    req_params = 'req_type=%d&player_id=%s&server_id=%d&equip_id=%s' % (
        req_type, player_id, server_id, equip_id)
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)

        if result['code'] == 0:
            result_code = result['content'][0]

        write_gm_log(request,
                     [req_type, server_id, player_id, result_code, equip_id])
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 4
0
def equip_add(request, player_id=0):

    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))

    req_type = 111
    result_msgs = {-1: '未知错误', 0: '成功', 1: '增加列表存在不存在的装备ID'}
    result_code = -1
    err_msg = ''
    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)

    equip_id = int(request.POST.get('equip_id', '1'))
    equip_level = int(request.POST.get('equip_level', '0'))
    equip_num = int(request.POST.get('equip_num', '1'))
    req_params = 'req_type=%d&player_id=%s&server_id=%d&equip_list=[[%d,%d,%d]]' % (
        req_type, player_id, server_id, equip_id, equip_level, equip_num)
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)

        if result['code'] == 0:
            result_code = result['content'][0]

        write_gm_log(request, [
            req_type, server_id, player_id, result_code,
            '[%d,%d,%d]' % (equip_id, equip_level, equip_num)
        ])
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 5
0
def get_server_info(server_id, net_id=-1, config_type=0):
    req_type = 502
    req_params = 'req_type=%d&server_id=%d&net_id=%s&config_type=%s' % (
        int(req_type), int(server_id), net_id, config_type)
    result = http_post(game_server_url.GM_SERVER_URL,
                       req_params,
                       timeout_param=10)
    result = json.loads(result)
    server_info = {}
    if result['code'] == 0:
        server_info = result['content'][0]
    return server_info
Exemplo n.º 6
0
def get_seience_info(player_id):
    req_type = 3  
    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id', server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (req_type, player_id, server_id) 
    result = http_post(game_server_url.GM_PLAYER_URL, req_params, timeout_param=10)
    result = json.loads(result)
    seience_info = {}
    if result['code'] == 0:
        seience_info = result['content'][0]['scl']
        
    return seience_info
Exemplo n.º 7
0
def post_getServer_list(request):
    req_params = 'req_type=601'
    result = http_post(game_server_url.GM_SERVER_URL,
                       req_params,
                       timeout_param=10)
    result = json.loads(result)
    msg = '失败'

    if result != '' and result != None:
        if result['code'] == '0' or result['code'] == 0:
            msg = '成功'

    return HttpResponse(msg)
Exemplo n.º 8
0
def get_data(player_id, req_type):
    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (
        req_type, player_id, server_id)
    result = None
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=20)
        result = json.loads(result)
        if result['code'] == 0:
            result = result['content'][0]
    except:
        pass

    return result
Exemplo n.º 9
0
def army_info(request, player_id=0, is_read=0):
    req_type = 2
    def_params = {
        "rid": u"武将RAWID",
        "ia": u"是否在野",
        "glv": u"武将等级 ",
        "rnl": u"转生需求等级",
        "exp": u"武将当前经验 ",
        "slv": u"士兵星级 ",
        "scn": u"当前士兵数",
        "smn": u"默认最大士兵数",
        "aa": u"武将培养增加值",
        "ee": u"武将身上的装备",
        "ha": u"武将体力加成"
    }

    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (
        req_type, player_id, server_id)
    list_infos = []
    err_msg = ''
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)
        if result['code'] == 0:
            player_info = result['content'][0]['rgl']

            for item in player_info:
                item_info = []
                for param in def_params:
                    if item.get(param, None) != None:
                        item_info.append(item.get(param))
                list_infos.append(item_info)
            print(list_infos)
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 10
0
def equip_info(request, player_id=0, is_read=0):
    req_type = 5
    def_params = {
        "id": u"装备ID",
        "rawId": u"装备原型ID",
        "generalName": u"装配武将",
        "level": u"装备等级",
        "attribute": u"属性",
        "mountlvl": u"战魂等级",
        "pieceNum": u"临时装备删除时间"
    }
    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))
    server_id = int(player_id) >> 20

    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)

    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (
        req_type, player_id, server_id)
    list_infos = []
    err_msg = ''
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)

        if result['code'] == 0:
            player_info = result['content'][0]['equipList']

            for item in player_info:
                item_info = []
                for param in def_params:
                    if item.get(param, None) != None:
                        item_info.append(item.get(param))
                    else:
                        item_info.append('')
                list_infos.append(item_info)
            print(list_infos)
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 11
0
def kingarena_info(request):
    list_infos = []
    list_server = get_server_list()
    is_search = request.GET.get('is_search', False)
    server_id = int(request.GET.get('server_id', '0'))
    err_msg = None
    if is_search:
        req_params = 'req_type=505&server_id=%d' % server_id 
        result = ''
        try:
            result = http_post(game_server_url.GM_SERVER_URL, req_params, timeout_param=10) 
            result = json.loads(result)
        except:
            err_msg = '获取失败!'
        if result != '' and result != None and err_msg == None:
            if result['code'] == '0' or result['code'] == 0:
                country_json = result.get("content")[0]
                
                position_param = get_kingarena_position_param();
                player_dic = get_kingarena_player_param();
                 
                for country in country_json:
                    position_array = []
                    for p_key in  position_param:
                        cname = position_param.get(p_key)
                        value = u"没有数据"
                        player_json = country.get(p_key) 
                        if player_json != None and player_json != '': 
                            player_attribute =  get_king_player_attribute(player_json, player_dic)
                            value = ','.join(player_attribute)
                            
                        tmp = "%s: %s" % (cname, value)
                        position_array.append(tmp)
                    list_infos.append(position_array)
    
    parg = {}
    parg["list_infos"] = list_infos
    parg["list_server"] = list_server
    parg["server_id"] = server_id
    parg["err_msg"] = err_msg
    
    return render_to_response('game/kingarena_info.html', parg)
Exemplo n.º 12
0
def team_info(request, player_id=0):
    req_type = 7
    def_params = [["createTime", u"创办时间", 0], ["creator", u"创办者ID", 0],
                  ["creatorName", u"创办者姓名", 0], ["declaration", u"留言", 0],
                  ["emblemLv", u"军徵等级", 0], ["kingdom", u"所属国家", 0],
                  ["leader", u"当前领袖ID", 0], ["leaderName", u"当前领袖名字", 0],
                  ["legionLv", u"军团等级", 0], ["name", u"军团名称", 0],
                  ["legionId", u"军团ID", 0]]

    if player_id == 0:
        player_id = int(request.GET.get('player_id', 0))

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    legion_name = request.GET.get('legion_name', '')

    req_params = 'req_type=%d&player_id=%s&server_id=%d&legion_name=%s' % (
        req_type, player_id, server_id, legion_name)
    list_infos = []
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)

        if result['code'] == 0:
            player_info = result['content'][0]

            for item in def_params:
                if player_info.get(item[0], None) != None:
                    list_infos.append({
                        'name': item[1],
                        'key': item[0],
                        'value': player_info.get(item[0]),
                        'is_modify': item[2]
                    })
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 13
0
def post(request):
    player_id = get_value(request, 'player_id', 0, int)

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_type = 141

    data = []

    append_hunshi = get_value(request, 'append_hunshi', None, int)
    if None != append_hunshi:
        data.append(append_hunshi)
    else:
        data.append(0)

    for index in range(1, 21):
        #1 到  20
        append_value = get_value(request, 'append_zhanhun_%s' % index, None,
                                 int)
        if None != append_value:
            data.append(append_value)
        else:
            data.append(0)

    try:
        request_param = json.dumps({"data": data})

        req_params = 'req_type=%d&player_id=%s&server_id=%d&modify_battle_heart_info=%s' % (
            req_type, player_id, server_id, request_param)
        print req_params
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print result
    except Exception, ex:
        print ex
        return HttpResponse(ex)
Exemplo n.º 14
0
def shutup_list(request, server_id=0):
    req_type = 503

    server_id = int(server_id)

    if server_id == 0:
        server_id = int(request.GET.get('server_id', '0'))

    net_id = request.GET.get('net_id', '-1')
    req_params = 'req_type=%d&server_id=%d&net_id=%s' % (req_type, server_id,
                                                         net_id)
    list_record = []
    try:
        result = http_post(game_server_url.GM_SERVER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_SERVER_URL, req_params, result)
        list_shutup = []
        if result['code'] == 0:
            list_shutup = result['content'][0]

        conn = getConn(server_id)
        cursor = conn.cursor()

        sql2 = 'select player_id,player_name,channel_id,user_type,link_key,login_num,mobile_key,last_time,create_time,status from player_%d where player_id in(%s)' % (
            server_id, ','.join(list_shutup))
        cursor.execute(sql2)

        list_tmp = cursor.fetchall()
        cursor.close()
        int_time = int(time.time())
        for item in list_tmp:
            #            print(item)
            item = list(item)
            item.append(list_shutup.get(str(item[0]), 0) - int_time)
            list_record.append(item)
    except Exception, e:
        pass
Exemplo n.º 15
0
def player_unshutup(request, player_id=0):

    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))

    req_type = 103
    result_msgs = {-1: '未知错误', 0: '成功'}
    result_code = -1

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (
        req_type, player_id, server_id)
    err_msg = ''
    try:
        result = http_post(game_server_url.GM_PLAYER_URL, req_params)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)
        if result['code'] == 0:
            result_code = result['content'][0]
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 16
0
def get_Top300list(request):

    s = int(request.GET.get('s', 0))

    server_id = int(request.GET.get('server_id', 0))

    if 0 == server_id:
        server_id = int(request.POST.get('server_id', 0))

    server_list = center_cache.get_server_list()

    data_list = []
    if 1 == s:
        req_type = 507
        req_params = 'req_type=%d&server_id=%d' % (int(req_type),
                                                   int(server_id))
        result = http_post(game_server_url.GM_SERVER_URL,
                           req_params,
                           timeout_param=10)
        print result
        result = json.loads(result)
        if result['code'] == 0:
            content_list = result['content']
            for item in content_list:
                for key in item:
                    data_item = {}
                    date = datetime.datetime.fromtimestamp(float(key))
                    data_item['date'] = date.strftime('%Y-%m-%d')
                    data_item['player_list'] = item.get(key, [])

                    data_list.append(data_item)

    parg = {}
    parg['server_list'] = server_list
    parg['data_list'] = data_list

    return render_to_response('game/arena_list.html', parg)
Exemplo n.º 17
0
def train_info(request, player_id=0, is_read=0):
    req_type = 4
    def_params = {
        "gi": u"武将ID",
        "ft": u"训练结束时间",
        "tt": u"训练类型",
        "lu": u"最后更新时间"
    }
    #"pn":"训练位置","tl":"训练列表","hft":"突飞CD完成时间","hil":"突飞CD完成时间",
    if player_id == 0:
        player_id = int(request.GET.get('player_id', 0))
    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (
        req_type, player_id, server_id)
    list_infos = []
    err_msg = ''
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)

        if result['code'] == 0:
            train_info = result['content'][0]['tl']

            for item in train_info:
                item_info = []
                for param in def_params:
                    if item.get(param, None) != None:
                        item_info.append(item.get(param))
                list_infos.append(item_info)

    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 18
0
def hero_add(request, player_id=0):
    req_type = 121
    result_msgs = {
        -1: '未知错误',
        0: '成功',
        2: '玩家不存在',
        3: '该英雄已可招募',
        4: '不存在该ID的英雄'
    }
    result_code = -1
    err_msg = ''
    hero_id = int(request.POST.get('hero_id', '0'))

    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))

    if player_id == 0:
        player_id = int(request.POST.get('player_id', '0'))

    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d&hero_id=%s' % (
        req_type, player_id, server_id, hero_id)
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)

        if result['code'] == 0:
            result_code = result['content'][0]
        write_gm_log(request,
                     [req_type, server_id, player_id, result_code, hero_id])
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 19
0
def build_info(request, player_id=0, is_read=0):
    req_type = 6
    def_params = {
        0: u"主城",
        1: u"银库",
        2: u"民居一",
        3: u"民居二",
        4: u"民居三",
        5: u"民居四",
        6: u"商店",
        7: u"校场",
        8: u"军机处",
        9: u"粮仓",
        10: u"市场",
        11: u"兵营",
        12: u"民居五",
        13: u"民居六",
        14: u"民居七",
        15: u"账房",
        16: u"民居八",
        17: u"铸币厂",
        18: u"民居九",
        19: u"驿站",
        20: u"钱庄",
        21: u"民居十",
        22: u"第二校场",
        23: u"纺织局",
        24: u"铁匠铺"
    }
    if player_id == 0:
        player_id = int(request.GET.get('player_id', '0'))
    server_id = int(player_id) >> 20
    server_id = center_cache.get_server_config(server_id, 'master_server_id',
                                               server_id)
    req_params = 'req_type=%d&player_id=%s&server_id=%d' % (
        req_type, player_id, server_id)
    list_infos = []
    err_msg = ''
    try:
        result = http_post(game_server_url.GM_PLAYER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        print(game_server_url.GM_PLAYER_URL, req_params, result)

        if result['code'] == 0:
            build_list = result['content'][0]['buildingList']

            for item in build_list:
                if def_params.get(item['rawId'], None) != None:
                    list_infos.append({
                        'name':
                        def_params.get(item['rawId'], '未知'),
                        'key':
                        item['rawId'],
                        'value':
                        item['level'],
                        'is_modify':
                        0
                    })
    except Exception, e:
        err_msg = '发生错误:%s!' % e
Exemplo n.º 20
0
    if err_msg == '':
        log_param = {}
        #<QueryDict: {u'jl': [u'50000'], u'append_gl': [u''], u'append_fd': [u''], u'append_sn': [u''], u'append_sl': [u''], u'append_ww': [u''], u'rg': [u'0'], u'append_rg': [u''], u'ww': [u'200'], u'append_jl': [u''], u'append_jg': [u''], u'fd': [u'6000'], u'sn': [u'4000'], u'jg': [u'410'], u'sl': [u'125'], u'gl': [u'1905']}>
        request_param = do_filter_player_param(player_info, source_player_info,
                                               log_param,
                                               req_type)  #过滤 没被修改的参数,并纪录到日志集合

        log_param = json.dumps(log_param, ensure_ascii=False)
        request_param = json.dumps(request_param, ensure_ascii=False)  #转化字符串

        req_params = 'req_type=%d&player_id=%s&server_id=%d&edited_player_info=%s' % (
            req_type, player_id, server_id, request_param)
        err_msg = ''
        try:
            result = http_post(game_server_url.GM_PLAYER_URL,
                               req_params,
                               timeout_param=10)
            result = json.loads(result)
            print(game_server_url.GM_PLAYER_URL, req_params, result)
            if result['code'] == 0:
                result_code = result['content'][0]
            write_gm_log(
                request,
                [req_type, server_id, player_id, result_code, log_param
                 ])  #写日志,保存到数据库
        except Exception, e:
            err_msg = '发生错误:%s!' % e

        result_msg = result_msgs.get(result_code, '')
    else:
        result_msg = err_msg
Exemplo n.º 21
0
def send_msg(request, server_id=0):
    server_id = int(server_id)
    player_id = int(request.GET.get('player_id', '0'))

    if player_id == 0:
        player_id = int(request.POST.get('player_id', '0'))

    if server_id == 0:
        server_id = int(request.GET.get('server_id', '0'))

    if server_id == 0:
        server_id = int(request.POST.get('server_id', '0'))

    usm = UserStateManager(request)

    server_list = []
    if server_id == 0:
        if usm.current_userRole_is_root():
            server_list = get_server_list()
        else:
            server_list = usm.get_the_user().server.all()

    err_msg = ''
    if request.method == 'POST':
        result_msgs = {-1: '未知错误', 0: '成功'}
        result_code = -1

        if not usm.current_userRole_is_root():
            the_user = usm.get_the_user()
            user_server_list = []
            for server in the_user.server.all():
                user_server_list.append(server.id)
            if not user_server_list.__contains__(server_id):
                return HttpResponse(u'没有权限')

        server_id = center_cache.get_server_config(server_id,
                                                   'master_server_id',
                                                   server_id)
        msg_content = request.POST.get('content', '').encode('utf-8')
        try:
            if player_id > 0:
                if request.POST.get('msg_type', '0') == '0':
                    req_type = 612
                else:
                    req_type = 616

                req_params = 'req_type=%d&server_id=%d&reciver_id=%s&msg_content=%s' % (
                    req_type, server_id, player_id, msg_content)
            else:
                req_type = 611
                net_id = request.GET.get('net_id', '-1')
                req_params = 'req_type=%d&server_id=%d&net_id=%s&msg_content=%s' % (
                    req_type, server_id, net_id, msg_content)

            result = http_post(game_server_url.GM_SERVER_URL,
                               req_params,
                               timeout_param=10)
            result = json.loads(result)
            print(game_server_url.GM_SERVER_URL, req_params, result)

            if result['code'] == 0:
                result_code = result['content'][0]
            write_gm_log(
                request,
                [req_type, server_id, player_id, result_code, msg_content])
        except Exception, e:
            err_msg = '发生错误%s' % e
            #print(u'发生错误:%s' % e)
        result_msg = result_msgs.get(result_code, '')

        parg = {}
        parg["err_msg"] = err_msg
        parg["result_msg"] = result_msg

        return render_to_response('game/feedback.html', locals())
Exemplo n.º 22
0
def server_modify(request, server_id=0):
    server_id = int(server_id)
    if server_id == 0:
        server_id = int(request.GET.get('server_id', '0'))
    err_msg = ''
    #*****定时任务设置参数 ****************

    task_setting = int(request.GET.get('task_setting', 0))
    trigger_time = request.GET.get('trigger_time', '')
    recover_time = request.GET.get('recover_time', '')

    if 1 == task_setting:
        try:
            trigger_time = datetime.datetime.strptime(trigger_time,
                                                      '%Y-%m-%d %H:%M:%S')
            recover_time = datetime.datetime.strptime(recover_time,
                                                      '%Y-%m-%d %H:%M:%S')
        except:
            err_msg = '请输入正确的时间格式'

    #*****定时任务设置参数 END ***********

    is_ajax = request.GET.get('ajax', False)
    req_type = 606
    result_msgs = {-1: u'未知错误', 0: u'成功'}
    result_code = -1
    config_json = request.POST
    #    modify_science_info = json.dumps(modify_science_info)
    net_id = request.GET.get('net_id', '-1')
    config_type = request.GET.get('config_type', '0')

    source_server_info = get_server_info(server_id, net_id, config_type)

    log_param = {}
    request_param = do_filter_server_param(config_json, source_server_info,
                                           log_param)

    #需要设置定时任务
    if task_setting == 1:
        server = Server.objects.get(id=server_id)
        recover_data = {}
        for modify_param_key in request_param:
            recover_data[modify_param_key] = source_server_info.get(
                modify_param_key)
        setting_task(server, net_id, trigger_time, recover_time, recover_data,
                     request_param)
        if is_ajax:
            return HttpResponse('{code:0,msg:"设置成功"}')

        return render_to_response('game/feedback.html',
                                  {"result_msg": u"设置成功"})

    request_param = json.dumps(request_param, ensure_ascii=False)  #转化字符串
    log_param = json.dumps(log_param, ensure_ascii=False)

    req_params = 'req_type=%d&server_id=%d&net_id=%s&config_type=%s&config_json=%s' % (
        req_type, server_id, net_id, config_type, request_param)

    try:
        result = http_post(game_server_url.GM_SERVER_URL,
                           req_params,
                           timeout_param=10)
        result = json.loads(result)
        #print(game_server_url.GM_SERVER_URL, req_params, result)
        if result['code'] == 0:
            result_code = result['content'][0]

        write_gm_log(request,
                     [req_type, server_id, net_id, result_code, log_param])
    except Exception, e:
        err_msg = u'发生错误%s' % e
Exemplo n.º 23
0
        gm_def.url = server_cfg.get('gm_url', gm_def.url)

    #组装内部参数(JSON格式参数)
    for key, value in json_param.items():
        req_params += '&%s=%s' % (key, json.dumps(value))

    #参数处理完毕

    req_params = req_params.encode('utf-8')
    print '***************gm -log*******************'
    print u'request param::::', req_params
    result_json_str = ''
    try:
        #gm_def.url = 'http://203.195.147.115:8082/gm'
        #req_params = 'req_type=obtainquestionlist&server_id=1&secure_key=le1dou'
        result_json_str = http_post(gm_def.url, req_params, timeout_param=120)
        fb = None
        try:
            now = datetime.datetime.now()
            log_path = '/data/gm.log'
            if getsize(log_path) > 3010632:
                shutil.move(
                    log_path,
                    '/data/gm_%s.log' % (now.strftime('%Y-%m-%d_%H-%M-%S')))
            fb = open('/data/gm.log', 'a')
            fb.write(
                '========================[%s]===========================\n' %
                now.strftime('%m-%d %H:%M:%S'))
            fb.write('REQUEST:\n')
            fb.write(gm_def.url)
            fb.write('\n')