1
This commit is contained in:
parent
b2ff69bac2
commit
5087125525
@ -1,18 +1,12 @@
|
|||||||
const log = require('j7/log');
|
const log = require('j7/log');
|
||||||
const app = require('j7/app');
|
const app = require('j7/app');
|
||||||
const bcutils = require('j7/bcutils');
|
|
||||||
const utils = require('j7/utils');
|
const utils = require('j7/utils');
|
||||||
const j7event = require('j7/event');
|
const j7event = require('j7/event');
|
||||||
const metaFactory = require('../../metadata/factory');
|
const metaFactory = require('../../metadata/factory');
|
||||||
const C = require('../../C');
|
const BaseEventProcess = require('../common/BaseEventProcess');
|
||||||
const gameapi = require('../gameapi');
|
|
||||||
const http = require('j7/http');
|
|
||||||
const config = require('j7/config');
|
|
||||||
|
|
||||||
const BASE_URL = config('market_api');
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
// 操作成功的事件ß
|
// 操作成功的事件
|
||||||
event BuyOrder(
|
event BuyOrder(
|
||||||
uint256 indexed tokenId,
|
uint256 indexed tokenId,
|
||||||
uint256 orderId,
|
uint256 orderId,
|
||||||
@ -25,16 +19,10 @@ event BuyOrder(
|
|||||||
);
|
);
|
||||||
*/
|
*/
|
||||||
|
|
||||||
class BuyOrder {
|
class BuyOrder extends BaseEventProcess {
|
||||||
|
|
||||||
async start(instance, conn, event) {
|
async start() {
|
||||||
this.instance = instance;
|
const returnValues = this.getReturnValues();
|
||||||
this.conn = conn;
|
|
||||||
this.event = event;
|
|
||||||
|
|
||||||
console.log('BuyOrder', event);
|
|
||||||
const blockNumber = event['blockNumber'];
|
|
||||||
const returnValues = event['returnValues'];
|
|
||||||
|
|
||||||
const tokenId = returnValues['tokenId'];
|
const tokenId = returnValues['tokenId'];
|
||||||
const orderId = returnValues['orderId'];
|
const orderId = returnValues['orderId'];
|
||||||
@ -45,42 +33,31 @@ class BuyOrder {
|
|||||||
const erc20 = returnValues['erc20'];
|
const erc20 = returnValues['erc20'];
|
||||||
const price = returnValues['price'];
|
const price = returnValues['price'];
|
||||||
|
|
||||||
while (true) {
|
const params = {
|
||||||
try {
|
'c': 'Market',
|
||||||
const {err, data} = await http.get
|
'a': 'eventBuyOrder',
|
||||||
(BASE_URL,
|
'tokenId': tokenId,
|
||||||
{
|
'orderId': orderId,
|
||||||
'c': 'Market',
|
'nftToken': nftToken,
|
||||||
'a': 'eventBuyOrder',
|
'amount': amount,
|
||||||
'tokenId': tokenId,
|
'seller': seller,
|
||||||
'orderId': orderId,
|
'buyer': buyer,
|
||||||
'nftToken': nftToken,
|
'erc20': erc20,
|
||||||
'amount': amount,
|
'price': price
|
||||||
'seller': seller,
|
};
|
||||||
'buyer': buyer,
|
await this.callGameApi
|
||||||
'erc20': erc20,
|
(params,
|
||||||
'price': price
|
async (data) => {
|
||||||
});
|
|
||||||
console.log(err, data);
|
|
||||||
if (!data) {
|
if (!data) {
|
||||||
throw 'data is empty5';
|
this.throwError('callGameApi error:' + data);
|
||||||
}
|
}
|
||||||
if (data['errcode'] == 0 ||
|
if (data['errcode'] == 0 ||
|
||||||
data['errcode'] == 1) {
|
data['errcode'] == 1) {
|
||||||
return;
|
return true;
|
||||||
}
|
}
|
||||||
} catch (e) {
|
return true;
|
||||||
log.error(e);
|
});
|
||||||
}
|
await this.markOk();
|
||||||
await utils.sleep(3000 + utils.randRange(500, 1500));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
throwError(err) {
|
|
||||||
const errMsg = 'processBuyOrderEvent:' +
|
|
||||||
utils.jsonEncode(this.instance) +
|
|
||||||
' err:' + err;
|
|
||||||
throw errMsg;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ const app = require('j7/app');
|
|||||||
const bcutils = require('j7/bcutils');
|
const bcutils = require('j7/bcutils');
|
||||||
const utils = require('j7/utils');
|
const utils = require('j7/utils');
|
||||||
const j7event = require('j7/event');
|
const j7event = require('j7/event');
|
||||||
|
const http = require('j7/http');
|
||||||
const constant = require('common/constant');
|
const constant = require('common/constant');
|
||||||
const metaFactory = require('../../metadata/factory');
|
const metaFactory = require('../../metadata/factory');
|
||||||
|
|
||||||
@ -67,6 +68,25 @@ class BaseEventProcess {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async callGameApi(params, checkCb) {
|
||||||
|
while (true) {
|
||||||
|
try {
|
||||||
|
const {err, data} = await http.get('',params);
|
||||||
|
if (err) {
|
||||||
|
await utils.sleep(3000 + utils.randRange(500, 1500));
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
const ret = await checkCb(data);
|
||||||
|
if (ret) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} catch (e) {
|
||||||
|
log.error(e);
|
||||||
|
}
|
||||||
|
await utils.sleep(3000 + utils.randRange(500, 1500));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module.exports = BaseEventProcess;
|
module.exports = BaseEventProcess;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user