diff --git a/server/web3dbspider/services/events/GameItemMall/item_soldout.js b/server/web3dbspider/services/events/GameItemMall/item_soldout.js index ebf6e1d..0ec5cf0 100644 --- a/server/web3dbspider/services/events/GameItemMall/item_soldout.js +++ b/server/web3dbspider/services/events/GameItemMall/item_soldout.js @@ -1,11 +1,6 @@ const log = require('j7/log'); -const app = require('j7/app'); -const bcutils = require('j7/bcutils'); const utils = require('j7/utils'); -const j7event = require('j7/event'); -const metaFactory = require('../../metadata/factory'); -const C = require('../../C'); -const gameapi = require('../gameapi'); +const BaseEventProcess = require('../common/BaseEventProcess'); /* 操作成功的事件 @@ -17,56 +12,36 @@ event ItemSoldOut( ); */ -class GameItemMallBuy { +class ItemSoldOut extends BaseEventProcess { - async start(instance, conn, event) { - console.log('GameItemMallBuy', event); - const blockNumber = event['blockNumber']; - const returnValues = event['returnValues']; + async start() { + const returnValues = this.getReturnValues(); const transId = returnValues['orderId']; const orderId = returnValues['orderId']; - if (orderId != transId) { - //this.throwError('error orderId:' + utils.jsonEncode(returnValues)); - //return; - } - const a = 'dispatch'; - while (true) { - try { - const {err, data} = await gameapi.callApi - ( - 'Callback', - a, - { - 'action': 'gameItemMallBuyOk', - 'trans_id': transId, - 'order_id': orderId, - } - ); - if (err) { - throw err; - } - console.log(data); + const params = { + 'c': 'Callback', + 'a': 'dispatch', + 'action': 'gameItemMallBuyOk', + 'trans_id': transId, + 'order_id': orderId, + }; + await this.callGameApi + (params, + async (data) => { if (!data) { - throw 'data is empty1'; + this.throwError('callGameApi error:' + data); } if (data['errcode'] == 0 || data['errcode'] == 1 || data['errcode'] == 2) { - return; + return true; } - } catch (e) { - log.error(e); - } - await utils.sleep(3000 + utils.randRange(500, 1500)); - } - } - - throwError(instance, err) { - const errMsg = 'GameItemMallBuy:' + utils.jsonEncode(instance) + ' err:' + err; - throw errMsg; + return true; + }); + await this.markOk(); } } -module.exports = GameItemMallBuy; +module.exports = ItemSoldOut;