def doStoreSuccess(self, request): mo = MsgPack() mi = self.checkStoreAction.check(request) if mi.error: mo.setError(1, mi.error) else: clientId = tysessiondata.getClientId(mi.userId) if mi.buyType == '1': # 钻石 chargedRmbs = 0 chargedDiamonds = 0 consumeCoin = mi.price else: chargedRmbs = mi.price chargedDiamonds = mi.count * mi.prodDiamond consumeCoin = 0 params = { 'userId': mi.userId, 'appId': tyglobal.gameId(), 'realGameId': tyglobal.gameId(), 'clientId': clientId, 'prodOrderId': mi.orderId, 'prodId': mi.productId, 'prodCount': 1, 'chargeType': 'tester', 'chargedRmbs': chargedRmbs, 'chargedDiamonds': chargedDiamonds, 'consumeCoin': consumeCoin, '_test_': 1, } url = tyglobal.httpGame( ) + '/api/hall5/store/consume/delivery?' + ftstr.toHttpStr(params) _, ret = fthttp.queryHttp('GET', url, None, None, 5) if ret != 'success': mo.setError(1, ret) else: mo.setResult('ok', 1) if chargedRmbs > 0 or chargedDiamonds > 0: params = { 'appId': tyglobal.gameId(), 'clientId': clientId, 'userId': mi.userId, 'realGameId': tyglobal.gameId(), 'prodId': mi.productId, 'chargedRmbs': chargedRmbs, 'chargedDiamonds': chargedDiamonds, '_test_': 1, } url = tyglobal.httpGame( ) + '/api/hall5/store/consume/notify?' + ftstr.toHttpStr( params) ret = fthttp.queryHttp('GET', url, None, None, 5) return mo
def uploadVideo(uploadUrl, token, uploadPath, videoData): try: filename = os.path.basename(uploadPath) formItems = [] formItems.append(MultipartForm.FormItemData('token', token)) formItems.append(MultipartForm.FormItemData('key', uploadPath)) formItems.append( MultipartForm.FormItemFile('file', videoData, filename)) #formItems.append(FormItemFile('fileBinaryData', videoData, filename)) headers, uploadData = MultipartForm.encodeFormItems(formItems) retrydata = {'max': 3} code, res = fthttp.queryHttp(method='POST', url=uploadUrl, header=headers, body=uploadData, connect_timeout=5, retrydata=retrydata) if ftlog.is_debug(): ftlog.debug('uploader.uploadVideo uploadUrl=', uploadUrl, 'uploadPath=', uploadPath, 'token=', token, 'ret=', (code, res)) if code == 200 or code == 406: # 406 文件已经存在 return 0, '上传成功' ftlog.info('uploader.uploadVideo Res uploadUrl=', uploadUrl, 'uploadPath=', uploadPath, 'token=', token, 'ret=', code) return -1, '上传失败' except: return -2, '上传失败'
def doStoreBuy(self, request): mo = MsgPack() mi = self.checkStoreBuy.check(request) if mi.error: mo.setError(1, mi.error) else: clientId = tysessiondata.getClientId(mi.userId) orderId = ftstr.uuid() params = { 'appId': tyglobal.gameId(), 'realGameId': tyglobal.gameId(), 'clientId': clientId, 'userId': mi.userId, 'prodId': mi.productId, 'prodCount': mi.count, 'prodOrderId': orderId, '_test_': 1, } url = tyglobal.httpGame( ) + '/api/hall5/store/consume/transaction?' + ftstr.toHttpStr( params) _, ret = fthttp.queryHttp('GET', url, None, None, 5) if ret != 'ok': mo.setError(1, ret) else: mo.setResult('ok', 1) return mo
def doAudit(self, request, result): mo = MsgPack() mi = self.checkExchange.check(request) if mi.error: mo.setError(1, mi.error) else: params = { 'userId': mi.userId, 'result': result, 'realGameId': tyglobal.gameId(), 'exchangeId': mi.exchangeId, 'extOrderId': 'dummy_jd_num_audit', '_test_': 1, } url = tyglobal.httpGame( ) + '/api/hall5/exchange/auditCallback?' + ftstr.toHttpStr(params) _, ret = fthttp.queryHttp('GET', url, None, None, 5) if ret and ret[0] == '{': mo.updateResult(ftstr.loads(ret)) else: mo.setError(1, ret) return mo
def doStoreCancel(self, request): mo = MsgPack() mi = self.checkStoreActionTerm.check(request) if mi.error: mo.setError(1, mi.error) else: params = { 'userId': mi.userId, 'appId': tyglobal.gameId(), 'realGameId': tyglobal.gameId(), 'errinfo': 'test error', 'prodOrderId': mi.orderId, 'prodId': mi.productId, '_test_': 1, } url = tyglobal.httpGame( ) + '/api/hall5/store/pay/cancel?' + ftstr.toHttpStr(params) _, ret = fthttp.queryHttp('GET', url, None, None, 5) if ret != 'success': mo.setError(1, ret) else: mo.setResult('ok', 1) return mo