#!/usr/bin/python # -*- coding: GBK -*- #--------------------------------------------------------------------- # #--------------------------------------------------------------------- ##@package GMT_UnForbidLogin.py # GMÃüÁî½âËøÍæ¼ÒÕ˺Š# # @author wdb # @date 2012-6-14 # @version 1.1 # # @note # @change: "2012-07-12 18:00" wdb Ôö¼Ó±àÂëÊôÐÔ #--------------------------------------------------------------------- """Version = 2012-07-12 18:00""" #--------------------------------------------------------------------- #µ¼Èë from MangoDBCommon import fix_incomingText from Collections.CollectionDefine import * from Collections import DataServerPlayerData from Common import mylog import GMCommon #--------------------------------------------------------------------- #È«¾Ö±äÁ¿ #--------------------------------------------------------------------- ## ÊÕµ½gmÃüÁîÖ´ÐÐ # @param gmCmdDict:gmÃüÁî×Öµä # @return None def OnExec(gmCmdDict): # ת»»×Ö·û´®,»ñµÃÕ˺ŠplayerAccID = gmCmdDict.get(GMCommon.Def_GMKey_PlayerAccID, '') playerName = gmCmdDict.get(GMCommon.Def_GMKey_PlayerName, '') if playerAccID == '' and playerName == '': return GMCommon.Def_ParamErr, '' # ²éѯuserdb return GMCommon.Def_DoQueryUserDB, '' ## ²éѯlogdb·µ»Ø # @param logdb:logdb # @param data:´«ÈëµÄÐÅÏ¢ # @param gmCmdDict:gmÃüÁî×Öµä # @return None def LogDBResponse(logdb, data, gmCmdDict): return ## ²éѯuserdb·µ»Ø # @param userdb:userdb # @param data:´«ÈëµÄÐÅÏ¢ # @param gmCmdDict:gmÃüÁî×Öµä # @return None def UserDBResponse(userdb, data, gmCmdDict): playerAccID = gmCmdDict.get(GMCommon.Def_GMKey_PlayerAccID, '') playerName = gmCmdDict.get(GMCommon.Def_GMKey_PlayerName, '') # È¡µÃÍæ¼Òaccid if playerName != '': playerAccID = GMCommon.GetPlayerAccID(userdb, {'PlayerName':fix_incomingText(playerName), 'IsDeleted':0}) if playerAccID == '': return GMCommon.Def_NoTag, '' collection = userdb[UCN_DBPlayer] dbPlayer = DataServerPlayerData.tagDBPlayer() dbPlayer.IsDeleted = 0 loadOK = dbPlayer.adoLoadCEx(collection, {'AccID':fix_incomingText(playerAccID), 'IsDeleted':dbPlayer.IsDeleted}) if not loadOK: return GMCommon.Def_NoTag, '' # Íæ¼ÒÕ˺ÅÕý³£ if (dbPlayer.AccState & pow(2, GMCommon.Def_PysForbidByPy)) <= 0: return GMCommon.Def_NoNeed, '' # ÉèÖÃÍæ¼ÒÕ˺Å״̬ dbPlayer.AccState = dbPlayer.AccState ^ pow(2, GMCommon.Def_PysForbidByPy) dbPlayer.ExAttr17 = dbPlayer.AccState dbPlayer.adoUpdateC(collection) # ¼Ç¼Á÷Ïò dataDic = {"PlayerID":dbPlayer.PlayerID, 'AccID':playerAccID} GMCommon.SendEventPack(gmCmdDict.get(GMCommon.Def_GMKey_Type, ''), dataDic) return GMCommon.Def_Success, ''