def post(self): msgReq = msg_pb2.Msg() msgReq.ParseFromString(self.request.body) msgResp = msg_pb2.Msg() msgResp.type = msg_pb2.EnumMsg.Value('loginresponse') request = msgReq.request.loginRquest response = msgResp.response.loginResponse user = Dal_User().getLoginUser(request.sName, request.sPassWord) if user == None: response.nErrorCode = config_error['userinvaild'] else: if user.gamestate == configs_default['gameState']['forbid']: response.nErrorCode = config_error['userforbid'] elif Dal_User().getLoginer(user.id) and user.room == "": response.nErrorCode = config_error['userlogined'] else: sToken = Utils().createToken() # 生成token user.sToken = sToken # //设置位置信息 user.location = request.location response.nErrorCode = config_error['success'] response.requester.nUserID = user.id response.requester.sToken = sToken if user.name: response.requester.sName = user.name if user.nick: response.requester.sNick = user.nick if user.exp: response.requester.nExp = user.exp if user.gold != None: response.requester.nGold = user.gold if user.money != None: response.requester.nMoney = user.money if user.headimg: response.requester.sHeadimg = user.headimg if user.phone: response.requester.sPhone = user.phone if user.records: response.requester.sRecords = user.records if user.assets: response.requester.sAssets = user.assets if user.room: response.requester.sRoom = user.room if user.gender != None: response.requester.nGender = user.gender if user.luckytime: response.requester.bLuckyToday = (Utils().dbTime2Number( user.luckytime) >= Utils().LastDayEndTime()) else: response.requester.bLuckyToday = False if user.welfaretime: response.requester.bWelfareToday = (Utils().dbTime2Number( user.welfaretime) >= Utils().LastDayEndTime()) else: response.requester.bWelfareToday = False if user.sharetime: response.requester.bShareAwardWeek = ( Utils().dbTime2Number( user.sharetime) >= Utils().LastWeekEndTime()) else: response.requester.bShareAwardWeek = False if user.rankaward: rkAwardFlags = user.rankaward.split(';') for flag in rkAwardFlags: response.requester.bRkAwardFlags.append((flag == '1')) # response.requester.nWinCount = user.wincount # response.requester.nTotalCount = user.totalcount # response.requester.sIP = self.request.remote_ip delegater = Dal_Delegate().getDelegate(user.id) response.requester.sICode = delegater.icode # 登录记录 Dal_User().addLoginer(user.id) # //更新登录时间 Dal_User().updateLoginTime(user.id) data = msgResp.SerializeToString() self.write(data)
def post(self): msgReq = msg_pb2.Msg() msgReq.ParseFromString(self.request.body) msgResp = msg_pb2.Msg() msgResp.type = msg_pb2.EnumMsg.Value('loginresponse') request = msgReq.request.loginWXRequest response = msgResp.response.loginResponse icode = request.iCode user = Dal_User().getLoginUser(request.sOpenID,"") if user == None: response.nErrorCode = config_error['success'] user = User(id=None, name=request.sOpenID, password="", nick=request.sNick, exp=0, gold=0, money=0, headimg=request.sHeadImage, phone='', records='', assets='', room='', rookie = 0,invitetime=None, luckytime=None,welfaretime=None, gender=request.nGender,rankaward="0;0;0;0", logintime=Utils().dbTimeCreate(), gamestate = configs_default['gameState']['normal'], totalmoney=0,totalrmb=0,sharetime=None, wincount =0,totalcount=0,mails='',actawards='') Dal_User().addUser(user) icode = self.registDelegate(user,icode) rooikeAwardType = self.handleICode(user,icode) if user.gamestate == configs_default['gameState']['forbid']: response.nErrorCode = config_error['userforbid'] elif Dal_User().getLoginer(user.id) and user.room == "": response.nErrorCode = config_error['userlogined'] else: sToken = Utils().createToken() #生成token user.sToken = sToken #//设置位置信息 user.location = request.location #//更新头像 if request.sHeadImage != "" and request.sHeadImage != user.headimg: user.headimg = request.sHeadImage kwargs = {"headimg": request.sHeadImage} Dal_User().uqdateUser(user.id, **kwargs) #更新昵称 if request.sNick != "" and request.sNick != user.nick: user.sNick = request.sNick kwargs = {"nick": request.sNick} Dal_User().uqdateUser(user.id, **kwargs) response.nErrorCode = config_error['success'] response.rookieAward = rooikeAwardType response.requester.nUserID = user.id response.requester.sToken = sToken if user.name: response.requester.sName = user.name if user.nick: response.requester.sNick = user.nick if user.exp: response.requester.nExp = user.exp if user.gold!= None: response.requester.nGold = user.gold if user.money!= None: response.requester.nMoney = user.money if user.headimg: response.requester.sHeadimg = user.headimg if user.phone: response.requester.sPhone = user.phone if user.records: response.requester.sRecords = user.records if user.assets: response.requester.sAssets = user.assets if user.room: response.requester.sRoom = user.room if user.gender != None: response.requester.nGender = user.gender if user.luckytime: response.requester.bLuckyToday = (Utils().dbTime2Number(user.luckytime) >= Utils().LastDayEndTime()) else: response.requester.bLuckyToday = False if user.welfaretime: response.requester.bWelfareToday = (Utils().dbTime2Number(user.welfaretime) >= Utils().LastDayEndTime()) else: response.requester.bWelfareToday = False if user.sharetime: response.requester.bShareAwardWeek = ( Utils().dbTime2Number(user.sharetime) >= Utils().LastWeekEndTime()) else: response.requester.bShareAwardWeek = False if user.rankaward: rkAwardFlags = user.rankaward.split(';') for flag in rkAwardFlags: response.requester.bRkAwardFlags.append((flag == '1')) # response.requester.nWinCount = user.wincount # response.requester.nTotalCount = user.totalcount #response.requester.sIP = self.request.remote_ip delegater = Dal_Delegate().getDelegate(user.id) response.requester.sICode = delegater.icode # 登录记录 Dal_User().addLoginer(user.id) #//更新登录时间 Dal_User().updateLoginTime(user.id) data = msgResp.SerializeToString() self.write(data)