def post(self): post_data = {} for key in self.request.arguments: post_data[key] = self.get_arguments(key)[0] uid = int(post_data['id']) # rid = int(post_data['rid']) #要充值的下级代理id money = int(post_data['money']) user = Dal_User().getUser(uid) userChild = Dal_User().getUser(rid) result_data = {} if user == None or userChild == None: result_data['errorcode'] = config_error['delegateinvaid'] elif user.money < money: result_data['errorcode'] = config_error['delepayforothererror'] else: user.money = user.money - money userChild.money = userChild.money + money # 更新用户信息 update_data = {'money': user.money} Dal_User().uqdateUser(user.id, **update_data) update_data = {'money': userChild.money} Dal_User().uqdateUser(userChild.id, **update_data) time = Utils().dbTimeCreate() #新增充值记录 rechge = Recharge(id=None, time=time, money=money, uid=rid, good=uid, count='1', fromc='3') Dal_Recharge().addRecharge(rechge) result_data['errorcode'] = config_error['success'] result_data['money'] = user.money result_data['rid'] = userChild.id result_data['rmoney'] = userChild.money respon_json = json.dumps(result_data) self.write(respon_json)
def onAppleBuy(self,uID,gID,nMoney,nCount): # 处理回调结果 user = Dal_User().getUser(uID) goodConfig = configs_default['goods'][gID] if goodConfig['type'] == configs_default['goodType']['money']: user.money = user.money + goodConfig['extra'] user.totalmoney = user.totalmoney + goodConfig['extra'] user.totalrmb = user.totalrmb + goodConfig['rmb'] # 检测代理充值奖励 delegater = Dal_Delegate().getDelegate(user.id) dLv = str(delegater.slevel) parentDelegater = Dal_Delegate().getDelegate(delegater.parent) if parentDelegater: # 对上级代理做奖励 parentUser = Dal_User().getUser(parentDelegater.gid) awardPercent = configs_default['delegate']['payAwards'][dLv] awardPay = math.ceil(goodConfig['extra'] * awardPercent) parentUser.money = parentUser.money + awardPay parentDelegater.awards = parentDelegater.awards + awardPay # 给上级代理奖励的钻石 kwargs = {"money": parentUser.money} Dal_User().uqdateUser(parentUser.id, **kwargs) # 上级代理获得的奖励总数 kwargs = {"awards": parentDelegater.awards} Dal_Delegate().uqdateDelegate(parentDelegater.id, **kwargs) elif goodConfig['type'] == configs_default['goodType']['gold']: user.gold = user.gold + goodConfig['extra'] kwargs = {"gold": user.gold, "money": user.money, "totalmoney": user.totalmoney, "totalrmb": user.totalrmb} Dal_User().uqdateUser(user.id, **kwargs) # 充值 re = Recharge(id=None, time=Utils().dbTimeCreate(), money=nMoney, uid=uID, good=gID, count=nCount,fromc=1) Dal_Recharge().addRecharge(re)
def post(self): msgReq = msg_pb2.Msg() msgReq.ParseFromString(self.request.body) msgResp = msg_pb2.Msg() msgResp.type = msg_pb2.EnumMsg.Value('luckyresponse') user = Dal_User().getUser(msgReq.request.luckyRequest.nUserID) if user == None: msgResp.response.luckyResponse.nErrorCode = config_error[ 'userinvaild'] elif user.luckytime and Utils().dbTime2Number( user.luckytime) >= Utils().LastDayEndTime(): msgResp.response.luckyResponse.nErrorCode = config_error[ 'luckytimeerror'] else: msgResp.response.luckyResponse.nErrorCode = config_error['success'] #抽奖逻辑 randNum = Utils().random_index(configs_default['luckysRate']) msgResp.response.luckyResponse.nLucky = randNum luckGood = configs_default['luckys'][randNum] if luckGood['type'] == configs_default['goodType']['money']: user.money = user.money + luckGood['extra'] elif luckGood['type'] == configs_default['goodType']['gold']: user.gold = user.gold + luckGood['extra'] user.luckytime = Utils().dbTimeCreate() msgResp.response.luckyResponse.newAssets.nUserID = user.id msgResp.response.luckyResponse.newAssets.nGold = user.gold msgResp.response.luckyResponse.newAssets.nMoney = user.money kwargs = { "gold": user.gold, "money": user.money, "luckytime": user.luckytime } Dal_User().uqdateUser(user.id, **kwargs) # 邮件记录 mail = Mail() mail.uid = user.id mail.type = configs_default['mail']['type']['luckyaward'] mail.content = str(luckGood['type']) + ':' + str(luckGood['extra']) mail.time = Utils().dbTimeCreate() Dal_Mail().addMail(mail) Dal_User().addMails(mail.uid, mail.id) dataR = msgResp.SerializeToString() self.write(dataR)
def post(self): msgReq = msg_pb2.Msg() msgReq.ParseFromString(self.request.body) msgResp = msg_pb2.Msg() msgResp.type = msg_pb2.EnumMsg.Value('rankawardresponse') user = Dal_User().getUser(msgReq.request.rankAwardRequest.nUserID) if user == None: msgResp.response.rankAwardResponse.nErrorCode = config_error[ 'userinvaild'] elif Dal_User().getRankedFlag( user.id, msgReq.request.rankAwardRequest.nRankType): msgResp.response.rankAwardResponse.nErrorCode = config_error[ 'rankawarderror'] else: msgResp.response.rankAwardResponse.nErrorCode = config_error[ 'success'] #这里取排名 rankOrder = Dal_Record().getRankOrder( user.id, msgReq.request.rankAwardRequest.nRankType) rankAwardConfig = Dal_Record().getRankAward( rankOrder, msgReq.request.rankAwardRequest.nRankType) if rankAwardConfig == None: msgResp.response.rankAwardResponse.nErrorCode = config_error[ 'rankawarderror'] else: if rankAwardConfig['aType'] == configs_default['goodType'][ 'money']: user.money = user.money + rankAwardConfig['award'] elif rankAwardConfig['aType'] == configs_default['goodType'][ 'gold']: user.gold = user.gold + rankAwardConfig['award'] msgResp.response.rankAwardResponse.newAssets.nUserID = user.id msgResp.response.rankAwardResponse.newAssets.nGold = user.gold msgResp.response.rankAwardResponse.newAssets.nMoney = user.money kwargs = {"gold": user.gold, "money": user.money} Dal_User().uqdateUser(user.id, **kwargs) Dal_User().updateRankFlag( user.id, msgReq.request.rankAwardRequest.nRankType) dataR = msgResp.SerializeToString() self.write(dataR)
def post(self): Aid = self.getData("Aid") post_data = {} for key in self.request.arguments: post_data[key] = self.get_arguments(key)[0] #判断是否有超级管理员权限 response = self.IsSuperadmin(post_data) if response != None: respon_json = json.dumps(response) self.write(respon_json) return uid = int(post_data['uid']) money = int(post_data['money']) gold = int(post_data['gold']) user = Dal_User().getUser(uid) if user == None: respon = {'errorcode': config_error['userinvaid']} else: respon = {'errorcode': config_error['success']} user.money = user.money + money user.gold = user.gold + gold # 更新用户信息 update_data = {'money': user.money, 'gold': user.gold} Dal_User().uqdateUser(user.id, **update_data) # 充值 re = Recharge(id=None, time=Utils().dbTimeCreate(), money=money, uid=uid, good='admin', count=1, fromc=2) Dal_Recharge().addRecharge(re) # 更新操作 operate = configs_default['adminOperate']['recharge'] Dal_Admin().addOperate(Aid, operate) respon_json = json.dumps(respon) self.write(respon_json)
def post(self): msgReq = msg_pb2.Msg() msgReq.ParseFromString(self.request.body) msgResp = msg_pb2.Msg() msgResp.type = msg_pb2.EnumMsg.Value('buyresponse') user = Dal_User().getUser(msgReq.request.buyRequest.nUserID) if user == None: msgResp.response.buyResponse.nErrorCode = config_error['userinvaild'] else: msgResp.response.buyResponse.nErrorCode = config_error['success'] totalG = 0 totalM = 0 for i,v in enumerate(msgReq.request.buyRequest.goods): gID = v.nID gConfig = configs_default['goods'][str(gID)] gType = gConfig['type'] #这里只能用钻石购买金币 if gType != configs_default['goodType']['gold']:continue gMoney = gConfig['money']#需要花费的钻石数量 gExtra = gConfig['extra']#能兑换的金币数量 totalG = totalG + gExtra totalM = totalM + gMoney if user.money < totalM: msgResp.response.buyResponse.nErrorCode = config_error['moneyerror'] else: user.gold = user.gold + totalG user.money = user.money - totalM msgResp.response.buyResponse.newAssets.nUserID = user.id msgResp.response.buyResponse.newAssets.nGold = user.gold msgResp.response.buyResponse.newAssets.nMoney = user.money kwargs = {"gold": user.gold,"money": user.money} Dal_User().uqdateUser(user.id,**kwargs) dataR = msgResp.SerializeToString() self.write(dataR)
def post(self): post_data = json.loads(self.request.body) if (post_data["token"] != "FAK^&*#$BHI*&(*#@NFSADF"): return uid = int(post_data['uid']) money = int(post_data['money']) gold = 0 user = Dal_User().getUser(uid) if user == None: respon = {'errorcode': config_error['userinvaid']} else: user.money = user.money + money user.gold = user.gold + gold # 更新用户信息 update_data = {'money': user.money, 'gold': user.gold} Dal_User().uqdateUser(user.id, **update_data) # 充值 re = Recharge(id=None, time=Utils().dbTimeCreate(), money=money, uid=uid, good='admin', count=1, fromc=2) Dal_Recharge().addRecharge(re) respon = { 'errorcode': config_error['success'], 'money': user.money, "gold": user.gold } respon_json = json.dumps(respon) self.write(respon_json)
def post(self): root = ElementTree.fromstring(self.request.body) node_result_code = root.find('result_code') node_return_code = root.find('return_code') attach = root.find('attach') totle_fee = root.find('total_fee') time_end = root.find('time_end') userData = str(attach.text) arrData = userData.split(';') UID = arrData[0] GID = arrData[1] Count = arrData[2] Money = arrData[3] if node_result_code.text == 'SUCCESS' and node_return_code.text == 'SUCCESS': #给支付返回结果 # returnMsg = "<xml><return_code><![CDATA[SUCCESS]]></return_code><return_msg><![CDATA[OK]]></return_msg></xml>"#self.createReturnXML() self.write("SUCCESS") #避免重复通知 if Dal_CZTime().getCZTime(time_end.text) != None: return # 记录支付通知结果时间 避免重复通知 czT = CZTime(time=time_end.text) Dal_CZTime().addCZTime(czT) #处理回调结果 user = Dal_User().getUser(UID) goodConfig = configs_default['goods'][GID] if goodConfig['type'] == configs_default['goodType']['money']: user.money = user.money + goodConfig['extra'] user.totalmoney = user.totalmoney + goodConfig['extra'] user.totalrmb = user.totalrmb + goodConfig['rmb'] # 检测代理充值奖励 delegater = Dal_Delegate().getDelegate(user.id) dLv = str(delegater.slevel) #原始等级 parentDelegater = Dal_Delegate().getDelegate(delegater.parent) if parentDelegater: # 对上级代理做奖励 parentUser = Dal_User().getUser(parentDelegater.id) awardPercent = configs_default['delegate']['payAwards'][ dLv] awardPay = math.ceil(goodConfig['extra'] * awardPercent) parentUser.money = parentUser.money + awardPay parentDelegater.awards = parentDelegater.awards + awardPay #给上级代理奖励的钻石 kwargs = {"money": parentUser.money} Dal_User().uqdateUser(parentUser.id, **kwargs) #上级代理获得的奖励总数 kwargs = {"awards": parentDelegater.awards} Dal_Delegate().uqdateDelegate(parentDelegater.id, **kwargs) # 邮件记录 mail = Mail() mail.uid = parentDelegater.id mail.type = configs_default['mail']['type'][ 'deleparentaward'] mail.content = str(awardPay) mail.time = Utils().dbTimeCreate() Dal_Mail().addMail(mail) Dal_User().addMails(mail.uid, mail.id) elif goodConfig['type'] == configs_default['goodType']['gold']: user.gold = user.gold + goodConfig['extra'] kwargs = { "gold": user.gold, "money": user.money, "totalmoney": user.totalmoney, "totalrmb": user.totalrmb } Dal_User().uqdateUser(user.id, **kwargs) # 充值 re = Recharge(id=None, time=Utils().dbTimeCreate(), money=Money, uid=UID, good=GID, count=Count, fromc=0) Dal_Recharge().addRecharge(re)