def change_equip_to_html(request, equip_edit):
    """
        ②
        编辑装备信息
    """
    if request.method == 'POST':
        user_openid = request.POST.get("user_openid")
        server_id = request.POST.get("server_id")
        user_uid = request.POST.get("user_uid")
        user_name = request.POST.get("user_name")
        edit_data = eval(request.POST.get("edit_data"))
        will_edit_tid_level = edit_data['level']
        will_edit_tid = int(edit_data['tid'])
        old_edit_data = edit_data
        server_list, platform_list = daily_log._get_server_list(None, None)
        server_list.remove(server_list[0])

        item_id_name, item_id_type = game_config.get_item_config_with_id_name()
        monster_id_name = game_config.get_monster_config_with_id_name()
        item_tid_name_lst = []
        for (tid, name) in item_id_name.items():
            item_type = item_id_type[tid]
            if item_type == game_define.ITEM_TYPE_EQUIP:
                content = dict()
                content['tid'] = tid
                content['name'] = name
                item_tid_name_lst.append(content)

    return render_to_response(equip_edit, locals(), RequestContext(request))
def add_equip_to_html(request, equip_add):
    """
        ④
        添加装备
    """
    if request.method == 'POST':
        user_openid = request.POST.get("user_openid")
        server_id = request.POST.get("server_id")
        user_uid = request.POST.get("user_uid")
        user_name = request.POST.get("user_name")
        edit_data = eval(request.POST.get("edit_data"))
        will_edit_tid_level = edit_data['level']
        will_edit_tid = int(edit_data['tid'])
        server_list, platform_list = daily_log._get_server_list(None, None)
        server_list.remove(server_list[0])

        item_id_name, item_id_type = game_config.get_item_config_with_id_name()
        monster_id_name = game_config.get_monster_config_with_id_name()
        item_tid_name_lst = []
        for (tid, name) in item_id_name.items():
            item_type = item_id_type[tid]
            if item_type == game_define.ITEM_TYPE_EQUIP:
                content = dict()
                content['tid'] = tid
                content['name'] = name
                item_tid_name_lst.append(content)
        cmem_url = server_define.CMEM_MAP[int(server_id)]
        source = memcache.get_cmem_val(
            cmem_url, model_define.EQUIP_MODEL.format(user_id=int(user_uid)))
        add_data = source['seq_id']
        return render_to_response(equip_add, locals(), RequestContext(request))
def change_equip_to_html(request,equip_edit):
    """
        ②
        编辑装备信息
    """
    if request.method == 'POST':
        user_openid = request.POST.get("user_openid")
        server_id = request.POST.get("server_id")
        user_uid = request.POST.get("user_uid")
        user_name = request.POST.get("user_name")
        edit_data = eval(request.POST.get("edit_data"))
        will_edit_tid_level = edit_data['level']
        will_edit_tid = int(edit_data['tid'])
        old_edit_data = edit_data
        server_list, platform_list = daily_log._get_server_list(None, None)
        server_list.remove(server_list[0])

        item_id_name, item_id_type = game_config.get_item_config_with_id_name()
        monster_id_name = game_config.get_monster_config_with_id_name()
        item_tid_name_lst = []
        for (tid, name) in item_id_name.items():
            item_type = item_id_type[tid]
            if item_type == game_define.ITEM_TYPE_EQUIP:
                content = dict()
                content['tid'] = tid
                content['name'] = name
                item_tid_name_lst.append(content)

    return render_to_response(equip_edit,locals(),RequestContext(request))
def add_equip_to_html(request,equip_add):
    """
        ④
        添加装备
    """
    if request.method == 'POST':
        user_openid = request.POST.get("user_openid")
        server_id = request.POST.get("server_id")
        user_uid = request.POST.get("user_uid")
        user_name = request.POST.get("user_name")
        edit_data = eval(request.POST.get("edit_data"))
        will_edit_tid_level = edit_data['level']
        will_edit_tid = int(edit_data['tid'])
        server_list, platform_list = daily_log._get_server_list(None, None)
        server_list.remove(server_list[0])

        item_id_name, item_id_type = game_config.get_item_config_with_id_name()
        monster_id_name = game_config.get_monster_config_with_id_name()
        item_tid_name_lst = []
        for (tid, name) in item_id_name.items():
            item_type = item_id_type[tid]
            if item_type == game_define.ITEM_TYPE_EQUIP:
                content = dict()
                content['tid'] = tid
                content['name'] = name
                item_tid_name_lst.append(content)
        cmem_url = server_define.CMEM_MAP[int(server_id)]
        source = memcache.get_cmem_val(cmem_url, model_define.EQUIP_MODEL.format(user_id=int(user_uid)))
        add_data = source['seq_id']
        return render_to_response(equip_add,locals(),RequestContext(request))
Beispiel #5
0
def system_mail_add(request):
    """
    添加系统邮件
    """
    item_id_name, item_id_type = game_config.get_item_config_with_id_name()
    item_tid_name_lst = dict()
    item_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] != game_define.ITEM_TYPE_EQUIP:
            item_tid_name_lst[tid] = name
    data = dict()
    data['item_val'] = item_tid_name_lst.items()

    monster_id_name = game_config.get_monster_config_with_id_name()
    monster_id_name[0] = "无"
    monster_tid_name_lst = dict()
    for (tid, name) in monster_id_name.items():
        monster_tid_name_lst[tid] = name

    data['monster_val'] = monster_tid_name_lst.items()
    data['server_id'] = 10001
    data['target_user_uid'] = '1000004126'
    data['send_time'] = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    time_detla = datetime.timedelta(0, 0, 0, 0, 0, 72)
    indate_default = (datetime.datetime.now() +
                      time_detla).strftime('%Y-%m-%d %H:%M:%S')
    data['indate'] = indate_default
    print data
    return render_to_response("system_mail/system_mail_add.html", data,
                              RequestContext(request))
def player_commit_bugs_mail(request):
    """
    回信
    """
    target_user_uid = str(request.POST.get('user_uid'))
    server_id = int(request.POST.get("server_id"))
    time = str(request.POST.get("time"))

    time_detla = datetime.timedelta(0, 0, 0, 0, 0, 72)
    indate_default = (datetime.datetime.now() + time_detla).strftime('%Y-%m-%d %H:%M:%S')

    item_id_name, item_id_type = game_config.get_item_config_with_id_name()
    item_tid_name_lst = dict()
    item_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] != game_define.ITEM_TYPE_EQUIP:
            item_tid_name_lst[tid] = name
    data = dict()
    data['item_val'] = item_tid_name_lst.items()

    monster_id_name = game_config.get_monster_config_with_id_name()
    monster_id_name[0] = "无"
    monster_tid_name_lst = dict()
    for (tid, name) in monster_id_name.items():
        monster_tid_name_lst[tid] = name

    data['monster_val'] = monster_tid_name_lst.items()
    data['target_user_uid'] = target_user_uid
    data['indate'] = indate_default
    data['send_time'] = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    data['server_id'] = server_id
    data['time'] = time
    print data
    return render_to_response("player_commit_bugs/player_commit_bugs_mail_add.html", data,RequestContext(request))
Beispiel #7
0
def system_mail_add(request):
    """
    添加系统邮件
    """
    item_id_name, item_id_type = game_config.get_item_config_with_id_name()
    item_tid_name_lst = dict()
    item_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] != game_define.ITEM_TYPE_EQUIP:
            item_tid_name_lst[tid] = name
    data = dict()
    data["item_val"] = item_tid_name_lst.items()

    monster_id_name = game_config.get_monster_config_with_id_name()
    monster_id_name[0] = "无"
    monster_tid_name_lst = dict()
    for (tid, name) in monster_id_name.items():
        monster_tid_name_lst[tid] = name

    data["monster_val"] = monster_tid_name_lst.items()
    data["server_id"] = 10001
    data["target_user_uid"] = "1000004126"
    data["send_time"] = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
    time_detla = datetime.timedelta(0, 0, 0, 0, 0, 72)
    indate_default = (datetime.datetime.now() + time_detla).strftime("%Y-%m-%d %H:%M:%S")
    data["indate"] = indate_default
    print data
    return render_to_response("system_mail/system_mail_add.html", data, RequestContext(request))
Beispiel #8
0
def activity_edit(request):
    """
    编辑服务器信息
    """
    activity_id = int(request.POST.get("act_id"))
    activity = activity_list.get_activity(activity_id, True)
    _activity_dict = dict()
    _activity_dict['activity_id'] = activity['activity_id']
    _activity_dict['server_id'] = list_to_string(activity['server_int_lst'])
    _activity_dict['begin_time'] = activity['begin_date'].strftime('%m/%d/%Y')
    _activity_dict['time_length'] = activity['time_length']
    _activity_dict['time_distance'] = activity['time_distance']
    _activity_dict['is_forced_open'] = activity['is_forced_open']
    _activity_dict['new'] = activity['new']
    _activity_dict['item_id1'] = activity['item_id1']
    _activity_dict['item_num1'] = activity['item_num1']
    _activity_dict['item_id2'] = activity['item_id2']
    _activity_dict['item_num2'] = activity['item_num2']
    _activity_dict['item_id3'] = activity['item_id3']
    _activity_dict['item_num3'] = activity['item_num3']
    _activity_dict['gold'] = activity['gold']
    _activity_dict['stone'] = activity['stone']
    _activity_dict['free'] = activity['free']
    _activity_dict['exp'] = activity['exp']
    _activity_dict['equip'] = activity['equip']
    _activity_dict['monster'] = activity['monster']
    _activity_dict['star'] = activity['star']
    _activity_dict['discount'] = activity['discount']
    _activity_dict['title'] = activity['title']
    _activity_dict['label'] = activity['label']
    _activity_dict['detail'] = activity['detail']
    _activity_dict['title2'] = activity['title2']
    _activity_dict['label2'] = activity['label2']
    _activity_dict['detail2'] = activity['detail2']

    data = dict()
    data['activity_state_val'] = game_define.ACTIVITY_STATE_NAME_DICT.items()

    item_id_name, item_id_type = game_config.get_item_config_with_id_name()
    equip_tid_name_lst = dict()
    equip_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] == game_define.ITEM_TYPE_EQUIP:
            equip_tid_name_lst[tid] = name
    data['activity_equip_val'] = equip_tid_name_lst.items()

    monster_id_name = game_config.get_monster_config_with_id_name()
    monster_id_name[0] = "无"
    data['activity_monster_val'] = monster_id_name.items()

    item_tid_name_lst = dict()
    item_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] != game_define.ITEM_TYPE_EQUIP:
            item_tid_name_lst[tid] = name
    data['activity_item_val'] = item_tid_name_lst.items()

    data['activity'] = _activity_dict
    return render_to_response("activity/activity_edit.html", data,
                              RequestContext(request))
Beispiel #9
0
def activity_edit(request):
    """
    编辑服务器信息
    """
    activity_id = int(request.POST.get("act_id"))
    activity = activity_list.get_activity(activity_id, True)
    _activity_dict = dict()
    _activity_dict['activity_id'] = activity['activity_id']
    _activity_dict['server_id'] = list_to_string(activity['server_int_lst'])
    _activity_dict['begin_time'] = activity['begin_date'].strftime('%m/%d/%Y')
    _activity_dict['time_length'] = activity['time_length']
    _activity_dict['time_distance'] = activity['time_distance']
    _activity_dict['is_forced_open'] = activity['is_forced_open']
    _activity_dict['new'] = activity['new']
    _activity_dict['item_id1'] = activity['item_id1']
    _activity_dict['item_num1'] = activity['item_num1']
    _activity_dict['item_id2'] = activity['item_id2']
    _activity_dict['item_num2'] = activity['item_num2']
    _activity_dict['item_id3'] = activity['item_id3']
    _activity_dict['item_num3'] = activity['item_num3']
    _activity_dict['gold'] = activity['gold']
    _activity_dict['stone'] = activity['stone']
    _activity_dict['free'] = activity['free']
    _activity_dict['exp'] = activity['exp']
    _activity_dict['equip'] = activity['equip']
    _activity_dict['monster'] = activity['monster']
    _activity_dict['star'] = activity['star']
    _activity_dict['discount'] = activity['discount']
    _activity_dict['title'] = activity['title']
    _activity_dict['label'] = activity['label']
    _activity_dict['detail'] = activity['detail']
    _activity_dict['title2'] = activity['title2']
    _activity_dict['label2'] = activity['label2']
    _activity_dict['detail2'] = activity['detail2']

    data = dict()
    data['activity_state_val'] = game_define.ACTIVITY_STATE_NAME_DICT.items()

    item_id_name, item_id_type = game_config.get_item_config_with_id_name()
    equip_tid_name_lst = dict()
    equip_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] == game_define.ITEM_TYPE_EQUIP:
            equip_tid_name_lst[tid] = name
    data['activity_equip_val'] = equip_tid_name_lst.items()

    monster_id_name = game_config.get_monster_config_with_id_name()
    monster_id_name[0] = "无"
    data['activity_monster_val'] = monster_id_name.items()

    item_tid_name_lst = dict()
    item_tid_name_lst[0] = "无"
    for (tid, name) in item_id_name.items():
        if item_id_type[tid] != game_define.ITEM_TYPE_EQUIP:
            item_tid_name_lst[tid] = name
    data['activity_item_val'] = item_tid_name_lst.items()

    data['activity'] = _activity_dict
    return render_to_response("activity/activity_edit.html", data,RequestContext(request))
Beispiel #10
0
def _get_report_mem(source, user_id, server_id):
    info = []
    rank = 0
    monster_name_dict = get_monster_config_with_id_name()
    print source
    if source <> None:
        dat = source['report_lst']
        for dat_line in dat:
            all_dict = {}
            team_equips_lst = []
            equips = dat_line['dat']['team_equip']
            equips_name_dict = _get_equips(dat_line['dat']['equips'])
            print
            if len(equips_name_dict) <> 0:
                for i in equips:
                    temp = []
                    for j in i:
                        if j <> 0:
                            temp.append({
                                'name':
                                equips_name_dict[j]['name'],
                                'level':
                                '等级:%s' % (equips_name_dict[j]['level'])
                            })
                    if len(temp) <> 0:
                        team_equips_lst.append(temp)
                all_dict['equips'] = team_equips_lst
            # else:
            #     all_dict['equips']=team_equips_lst

            team_treasures_lst = []
            treasures = dat_line['dat']['team_treasure']
            treasures_name_dict = _get_treasures(dat_line['dat']['treasures'])
            if len(treasures_name_dict) <> 0:
                for i in treasures:
                    temp = []
                    for j in i:
                        if j <> 0:
                            temp.append({
                                'name':
                                treasures_name_dict[j]['name'],
                                'level':
                                '等级:%s' % (treasures_name_dict[j]['level'])
                            })
                    if len(temp) <> 0:
                        team_treasures_lst.append(temp)
                all_dict['treasures'] = team_treasures_lst
            # else:
            # all_dict['treasures']=treasures_name_dict

            team_monster_lst = []
            monsters = dat_line['dat']['monsters']
            if len(monsters) <> 0:
                for i in monsters:
                    if i <> None:
                        print i
                        #print monster_name_dict[i['tid']]
                        team_monster_lst.append({
                            'name':
                            monster_name_dict[i['tid']],
                            'level':
                            i['level'],
                            'starLevel':
                            i['starLevel'],
                            'normal_attack':
                            i['individual'][0],
                            'normal_defense':
                            i['individual'][1],
                            'special_attack':
                            i['individual'][2],
                            'special_defense':
                            i['individual'][3],
                            'speed':
                            i['individual'][4],
                            'skillsLevel':
                            i['skillsLevel'],
                            'effort':
                            i['effort']
                        })
            all_dict['monster'] = team_monster_lst
            all_dict['rank'] = dat_line['rank']
            tim = time.strftime('%m/%d/%Y-%H:%M:%S',
                                time.localtime(dat_line['time']))
            all_dict['time'] = tim
            all_dict['name'] = dat_line['name']
            all_dict['win'] = dat_line['win']

            info.append(all_dict)
        uid = source['uid']
        #print info
    return info
Beispiel #11
0
def add_monster(request):
    """
        增加宠物数据
        {'generation': 1,  'star_level_rate': 0.02083, 'createTime': datetime.datetime(2015, 5, 31, 9, 12, 51, 761554)}

        evo_level 4 <type 'int'>
        star_level_exp 16 <type 'int'>
        skillsExp [0, 0] <type 'list'>
        level 54 <type 'int'>
        playerID 1000095298 <type 'str'>
        effort 2 <type 'int'>
        starLevel 3 <type 'int'> "4"
        sex 0 <type 'int'>
        generation 1 <type 'int'>
        individual [1, 0, 1, 0, 0, 0] <type 'list'>
        evo_sun_stone 96 <type 'int'>
        skillsLevel [6, 10] <type 'list'>
        exp 11739 <type 'int'>
        personality 11 <type 'int'>
        tid 25 <type 'int'>
        uid 1 <type 'int'>
        star_level_rate 0.02083 <type 'float'>
        maxLevel 60 <type 'int'>
        createTime 2015-05-31 09:12:51.761554 <type 'datetime.datetime'>
        evo_fail_count 0 <type 'int'>
    """
    manager = GameManager.get_by_request(request)
    if request.method == 'GET':
        user_id = request.GET.get('user_id')
        server_id = request.GET.get('server_id')
        cmem_url = server_define.CMEM_MAP[int(server_id)]

        # 获取宠物tid和名字对应列表
        monster_id_name = game_config.get_monster_config_with_id_name()
        monster_id_name_lst = []
        for (tid, name) in monster_id_name.items():
            content = dict()
            content['tid'] = tid
            content['name'] = name + "_" + str(tid)
            monster_id_name_lst.append(content)
        monster_id_name_lst = sorted(monster_id_name_lst,
                                     cmp=lambda x, y: cmp(x['tid'], y['tid']))

        monster_model = memcache.get_cmem_val(
            cmem_url, model_define.MONSTER_MODEL.format(user_id=str(user_id)))
        monster_uid = monster_model['seq_id']

        return render_to_response(
            "data_edit/add_monster.html", {
                'user_id': user_id,
                'server_id': server_id,
                'monster_uid': monster_uid,
                'monster_id_name_lst': monster_id_name_lst
            }, RequestContext(request))
    elif request.method == 'POST':
        # 获取对应值
        user_id = str(request.POST.get('user_id'))
        monster_uid = int(request.POST.get('monster_uid'))
        server_id = int(request.POST.get('server_id'))
        monster_tid = int(request.POST.get("tid"))
        star_level = int(request.POST.get("star_level"))
        level = int(request.POST.get("level"))

        # 创建一个新宠物
        result = create_monster(user_id, monster_uid, server_id, monster_tid,
                                star_level, level)
        # 操作日志记录
        insert_action_create_monster(manager, server_id, user_id, monster_uid,
                                     monster_tid, star_level, level)

        # 创建完成返回宠物查询页面
        function_name = 'data_edit.monster_info_edit.{function}'.format(
            function=set_memcache.__name__)
        server_list, platform_list = daily_log._get_server_list(None, None)
        server_list.remove(server_list[0])

        cmem_url = server_define.CMEM_MAP[int(server_id)]
        monster_model = memcache.get_cmem_val(
            cmem_url, model_define.MONSTER_MODEL.format(user_id=str(user_id)))

        # 获取宠物相关最高值
        uid = monster_model['uid']
        monster_high_star_level = monster_model['monster_high_star_level']
        monster_kind = monster_model['monster_kind']
        monster_high_level = monster_model['monster_high_level']
        monster_high_quality = monster_model['monster_high_quality']

        all_monsters = monster_model['monsters']
        table_lst = []
        head_lst = [
            {
                'width': 50,
                'name': u'玩家ID'
            },
            {
                'width': 50,
                'name': u'宠物最高星级'
            },
            {
                'width': 50,
                'name': u'宠物最高等级'
            },
            {
                'width': 50,
                'name': u'宠物最高品质'
            },
            {
                'width': 50,
                'name': u'宠物种类个数'
            },
        ]
        row_lst = [
            uid, monster_high_star_level, monster_high_level,
            monster_high_quality,
            len(monster_kind)
        ]
        table_lst.append(row_lst)

        for _monster in all_monsters:
            _monster_config = game_config.get_monster_config(_monster['tid'])
            _monster['name'] = _monster_config['name']

        type_hidden = 'visible'
        # return HttpResponseRedirect("data_edit/monster_info_edit.html")
        return render_to_response(
            "data_edit/monster_info_edit.html", {
                "server_list": server_list,
                "user_id": user_id,
                'server_id': int(server_id),
                'row_lst': table_lst,
                'head_lst': head_lst,
                'monster_lst': all_monsters,
                'function_name': function_name,
                'type_hidden': type_hidden
            }, RequestContext(request))
#coding:utf-8
import os
import cPickle
from apps.utils import game_define
from apps.game_manager import game_manage_define
from apps.config import game_config
from apps.game_manager.mysql import server_list
from apps.utils import mem_key_name
import datetime

monster_id_name = game_config.get_monster_config_with_id_name()
item_id_name, item_id_type = game_config.get_item_config_with_id_name()
item_id_name[0] = "无"
monster_id_name[0] = "无"
all_server_dict = server_list.get_server_id_name_dict()

SERVER_HIDDEN_NAME_DICT = {
    1: u'隐藏',
    0: u'显示',
}


# ---------------------------管理员部分-------------------------------
def gm_action_super_register(action_dict):
    return "编号" + str(action_dict['uid']) + "账户名" + str(
        action_dict['account']) + "名字" + action_dict['name'].encode(
            'utf-8') + "描述" + str(action_dict['description']) + "权限" + str(
                action_dict['permission'])


def gm_action_delete_manager(action_dict):
def add_monster(request):
    """
        增加宠物数据
        {'generation': 1,  'star_level_rate': 0.02083, 'createTime': datetime.datetime(2015, 5, 31, 9, 12, 51, 761554)}

        evo_level 4 <type 'int'>
        star_level_exp 16 <type 'int'>
        skillsExp [0, 0] <type 'list'>
        level 54 <type 'int'>
        playerID 1000095298 <type 'str'>
        effort 2 <type 'int'>
        starLevel 3 <type 'int'> "4"
        sex 0 <type 'int'>
        generation 1 <type 'int'>
        individual [1, 0, 1, 0, 0, 0] <type 'list'>
        evo_sun_stone 96 <type 'int'>
        skillsLevel [6, 10] <type 'list'>
        exp 11739 <type 'int'>
        personality 11 <type 'int'>
        tid 25 <type 'int'>
        uid 1 <type 'int'>
        star_level_rate 0.02083 <type 'float'>
        maxLevel 60 <type 'int'>
        createTime 2015-05-31 09:12:51.761554 <type 'datetime.datetime'>
        evo_fail_count 0 <type 'int'>
    """
    manager = GameManager.get_by_request(request)
    if request.method == "GET":
        user_id = request.GET.get("user_id")
        server_id = request.GET.get("server_id")
        cmem_url = server_define.CMEM_MAP[int(server_id)]

        # 获取宠物tid和名字对应列表
        monster_id_name = game_config.get_monster_config_with_id_name()
        monster_id_name_lst = []
        for (tid, name) in monster_id_name.items():
            content = dict()
            content["tid"] = tid
            content["name"] = name + "_" + str(tid)
            monster_id_name_lst.append(content)
        monster_id_name_lst = sorted(monster_id_name_lst, cmp=lambda x, y: cmp(x["tid"], y["tid"]))

        monster_model = memcache.get_cmem_val(cmem_url, model_define.MONSTER_MODEL.format(user_id=str(user_id)))
        monster_uid = monster_model["seq_id"]

        return render_to_response(
            "data_edit/add_monster.html",
            {
                "user_id": user_id,
                "server_id": server_id,
                "monster_uid": monster_uid,
                "monster_id_name_lst": monster_id_name_lst,
            },
            RequestContext(request),
        )
    elif request.method == "POST":
        # 获取对应值
        user_id = str(request.POST.get("user_id"))
        monster_uid = int(request.POST.get("monster_uid"))
        server_id = int(request.POST.get("server_id"))
        monster_tid = int(request.POST.get("tid"))
        star_level = int(request.POST.get("star_level"))
        level = int(request.POST.get("level"))

        # 创建一个新宠物
        result = create_monster(user_id, monster_uid, server_id, monster_tid, star_level, level)
        # 操作日志记录
        insert_action_create_monster(manager, server_id, user_id, monster_uid, monster_tid, star_level, level)

        # 创建完成返回宠物查询页面
        function_name = "data_edit.monster_info_edit.{function}".format(function=set_memcache.__name__)
        server_list, platform_list = daily_log._get_server_list(None, None)
        server_list.remove(server_list[0])

        cmem_url = server_define.CMEM_MAP[int(server_id)]
        monster_model = memcache.get_cmem_val(cmem_url, model_define.MONSTER_MODEL.format(user_id=str(user_id)))

        # 获取宠物相关最高值
        uid = monster_model["uid"]
        monster_high_star_level = monster_model["monster_high_star_level"]
        monster_kind = monster_model["monster_kind"]
        monster_high_level = monster_model["monster_high_level"]
        monster_high_quality = monster_model["monster_high_quality"]

        all_monsters = monster_model["monsters"]
        table_lst = []
        head_lst = [
            {"width": 50, "name": u"玩家ID"},
            {"width": 50, "name": u"宠物最高星级"},
            {"width": 50, "name": u"宠物最高等级"},
            {"width": 50, "name": u"宠物最高品质"},
            {"width": 50, "name": u"宠物种类个数"},
        ]
        row_lst = [uid, monster_high_star_level, monster_high_level, monster_high_quality, len(monster_kind)]
        table_lst.append(row_lst)

        for _monster in all_monsters:
            _monster_config = game_config.get_monster_config(_monster["tid"])
            _monster["name"] = _monster_config["name"]

        type_hidden = "visible"
        # return HttpResponseRedirect("data_edit/monster_info_edit.html")
        return render_to_response(
            "data_edit/monster_info_edit.html",
            {
                "server_list": server_list,
                "user_id": user_id,
                "server_id": int(server_id),
                "row_lst": table_lst,
                "head_lst": head_lst,
                "monster_lst": all_monsters,
                "function_name": function_name,
                "type_hidden": type_hidden,
            },
            RequestContext(request),
        )
#coding:utf-8
import os
import cPickle
from apps.utils import game_define
from apps.game_manager import game_manage_define
from apps.config import game_config
from apps.game_manager.mysql import server_list
from apps.utils import mem_key_name
import datetime

monster_id_name = game_config.get_monster_config_with_id_name()
item_id_name, item_id_type = game_config.get_item_config_with_id_name()
item_id_name[0] = "无"
monster_id_name[0] = "无"
all_server_dict = server_list.get_server_id_name_dict()

SERVER_HIDDEN_NAME_DICT = {
    1: u'隐藏',
    0: u'显示',
}


# ---------------------------管理员部分-------------------------------
def gm_action_super_register(action_dict):
    return "编号"+str(action_dict['uid'])+"账户名"+str(action_dict['account'])+"名字"+action_dict['name'].encode('utf-8')+"描述"+str(action_dict['description'])+"权限"+str(action_dict['permission'])


def gm_action_delete_manager(action_dict):
    return "删除管理员:"+str(action_dict['del_gm'])

def _get_report_mem(source,user_id,server_id):
    info=[]
    rank=0
    monster_name_dict= get_monster_config_with_id_name()
    print source
    if source <> None:
        dat=source['report_lst']
        for dat_line in dat:
            all_dict={}
            team_equips_lst=[]
            equips=dat_line['dat']['team_equip']
            equips_name_dict=_get_equips(dat_line['dat']['equips'])
            print
            if len(equips_name_dict)<>0:
                for i in equips:
                    temp=[]
                    for j in i:
                        if j <> 0:
                            temp.append({'name':equips_name_dict[j]['name'],'level':'等级:%s'%(equips_name_dict[j]['level'])})
                    if len(temp) <>0:
                       team_equips_lst.append(temp)
                all_dict['equips']=team_equips_lst
            # else:
            #     all_dict['equips']=team_equips_lst

            team_treasures_lst=[]
            treasures=dat_line['dat']['team_treasure']
            treasures_name_dict=_get_treasures(dat_line['dat']['treasures'])
            if len(treasures_name_dict)<>0:
                for i in treasures:
                    temp=[]
                    for j in i:
                        if j <> 0:
                            temp.append({'name':treasures_name_dict[j]['name'],'level':'等级:%s'%(treasures_name_dict[j]['level'])})
                    if len(temp) <>0:
                         team_treasures_lst.append(temp)
                all_dict['treasures']=team_treasures_lst
            # else:
                # all_dict['treasures']=treasures_name_dict

            team_monster_lst=[]
            monsters=dat_line['dat']['monsters']
            if len(monsters) <>0:
                for i in monsters:
                    if i<>None:
                        print i
                    #print monster_name_dict[i['tid']]
                        team_monster_lst.append({'name':monster_name_dict[i['tid']],'level':i['level'],'starLevel':i['starLevel'],
                                            'normal_attack':i['individual'][0],'normal_defense':i['individual'][1],'special_attack':i['individual'][2],'special_defense':i['individual'][3],'speed':i['individual'][4],
                                             'skillsLevel':i['skillsLevel'],'effort':i['effort']})
            all_dict['monster']=team_monster_lst
            all_dict['rank']=dat_line['rank']
            tim=time.strftime('%m/%d/%Y-%H:%M:%S',time.localtime(dat_line['time']))
            all_dict['time']=tim
            all_dict['name']=dat_line['name']
            all_dict['win']=dat_line['win']


            info.append(all_dict)
        uid=source['uid']
        #print info
    return info