|
@@ -175,7 +175,7 @@ async function getAccountBalances(options) {
|
|
|
return aar;
|
|
|
}
|
|
|
} catch (error) {
|
|
|
- logger.log('getAccountBalances error:', error)
|
|
|
+ logger.log('getBalances error:', error,options)
|
|
|
return null
|
|
|
}
|
|
|
|
|
@@ -247,7 +247,7 @@ async function computeTransferGasFree(obj, my_account_all_coins, tokenPrices) {
|
|
|
transfer_obj.push(obj_20)
|
|
|
}
|
|
|
} else {
|
|
|
- logger.log('findTokenPriceItem error=', element);
|
|
|
+ logger.log('findTokenPriceItem not fount =', element);
|
|
|
}
|
|
|
});
|
|
|
logger.log('account_config.TOKEN_GAS_LIMIT=', account_config.TOKEN_GAS_LIMIT);
|
|
@@ -428,6 +428,7 @@ async function transfers(obj, my_account_all_coins, logParams) {
|
|
|
}
|
|
|
} else {
|
|
|
logger.tlog('start_collectCoins error=', ret);
|
|
|
+ logger.error('start_collectCoins 归集 error=', ret,ti);
|
|
|
};
|
|
|
}
|
|
|
if (t_i == my_account_all_coins.transfer_arrays.length) {
|
|
@@ -470,7 +471,7 @@ const transfer_handle = async (obj) => {
|
|
|
//提币公司
|
|
|
obj.privateKey = info.user_private_key;
|
|
|
// if (process.env.NODE_ENV != 'dev') {
|
|
|
- logger.debug('readCompanyPriveteKeyFromMysql=', obj.privateKey)
|
|
|
+ logger.log('readCompanyPriveteKeyFromMysql=', obj.privateKey)
|
|
|
// }
|
|
|
} else {
|
|
|
//读取用户充币地址对应的私钥
|
|
@@ -481,6 +482,8 @@ const transfer_handle = async (obj) => {
|
|
|
}
|
|
|
|
|
|
if (!obj.privateKey) {
|
|
|
+ logger.error('readPriveteKeyFromMysql error.', obj);
|
|
|
+ //提币公司
|
|
|
return toJson(-1, null, "readPriveteKeyFromMysql error.");
|
|
|
}
|
|
|
|
|
@@ -489,18 +492,16 @@ const transfer_handle = async (obj) => {
|
|
|
obj.privateKey = utils.decryptPrivityKey(obj.privateKey);
|
|
|
|
|
|
if (!obj.privateKey) {
|
|
|
+ logger.error('decryptPrivityKey error', obj);
|
|
|
return toJson(-1, null, "decryptPrivityKey error.");
|
|
|
}
|
|
|
} catch (error) {
|
|
|
+ logger.error('decryptPrivityKey error',error.toString(), obj);
|
|
|
if (!obj.privateKey) {
|
|
|
return toJson(-1, null, "decryptPrivityKey error.", error.toString());
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- if (!obj.privateKey) {
|
|
|
- return toJson(-1, null, "decryptPrivityKey error.");
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
var ret = await transfer(obj);
|
|
|
if (isTransferSucceed(ret)) {
|
|
@@ -514,6 +515,8 @@ const transfer_handle = async (obj) => {
|
|
|
logger.debug('cache setkey LAST_TOTAL_BNB_FREE getTransferGasFree', tr)
|
|
|
redis.redis_set(reids_token_config.LAST_TOTAL_BNB_FREE, tr.totalGasFree);
|
|
|
}
|
|
|
+ }else{
|
|
|
+ logger.error('transfer_handle transfer error', obj);
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
@@ -532,6 +535,7 @@ async function queryCollectBalance(address, chain) {
|
|
|
// return await getAccountBalances(queryCollectBalance);
|
|
|
return await getAccountAllCoins(queryCollectBalance);
|
|
|
} catch (error) {
|
|
|
+ logger.error('queryCollectBalance error', error.toString(),address,chain);
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
@@ -570,10 +574,13 @@ const collectCoins = async (obj) => {
|
|
|
if (process.env.NODE_ENV == 'dev') {
|
|
|
var test_json = '{"tokenPrice": [{"contract": "0x0000000000000000000000000000000000000000", "usdPrice": 400}, {"contract": "0x03716F32f72c692a0B355fa04639669E3341B94e", "usdPrice": 0.1}]}'
|
|
|
obj.tokenPrices = JSON.parse(test_json);
|
|
|
-
|
|
|
+
|
|
|
} else {
|
|
|
obj.tokenPrices = await redis.readRedis(reids_token_config.TOKENPRICE)
|
|
|
- if (!obj.tokenPrices) return 'readRedis error'
|
|
|
+ if (!obj.tokenPrices) {
|
|
|
+ logger.error('readRedis TOKENPRICE error')
|
|
|
+ return 'readRedis error'
|
|
|
+ }
|
|
|
if (typeof obj.tokenPrices == 'string')
|
|
|
obj.tokenPrices = JSON.parse(obj.tokenPrices);
|
|
|
}
|
|
@@ -732,10 +739,9 @@ const transfer = async (obj) => {
|
|
|
if (obj.privateKey != null) {
|
|
|
opts.privateKey = obj.privateKey;
|
|
|
}
|
|
|
-
|
|
|
+ var options;
|
|
|
try {
|
|
|
// sending 0.5 DAI tokens with 18 decimals on BSC testnet
|
|
|
- var options;
|
|
|
if (opts.contractAddress) { //如果存在就是代币
|
|
|
options = Moralis.TransferOptions = {
|
|
|
type: opts.type,
|
|
@@ -765,10 +771,11 @@ const transfer = async (obj) => {
|
|
|
return toJson(SUCCEED_CODE, ret, "");
|
|
|
} catch (error) {
|
|
|
logger.tlog('transfer error:', error);
|
|
|
+ logger.error('transfer error:', error.toString(),options)
|
|
|
if (error.reason != null) {
|
|
|
return toJson(ERROR_CODE_001, null, error.toString());
|
|
|
} else {
|
|
|
- return toJson(ERROR_CODE_001, null, error);;
|
|
|
+ return toJson(ERROR_CODE_001, null, error.toString());;
|
|
|
}
|
|
|
}
|
|
|
};
|
|
@@ -855,6 +862,7 @@ async function getTokenTransfers(opt) {
|
|
|
if (opt.address != null) {
|
|
|
options.address = opt.address;
|
|
|
} else {
|
|
|
+ logger.error('getTokenTransfers error please check address parameter is ok ?', options);
|
|
|
return toJson(ERROR_CODE_001, null, "please check address parameter is ok ?");
|
|
|
}
|
|
|
logger.log('getTokenTransfers account getTransactions>>>>>', options);
|
|
@@ -869,6 +877,12 @@ async function getTokenTransfers(opt) {
|
|
|
}
|
|
|
logger.log('getTokenTransfers account getTokenTransfers>>>>>', options);
|
|
|
var t_2 = await Moralis.Web3API.account.getTokenTransfers(options);
|
|
|
+
|
|
|
+ //异常
|
|
|
+ if (t_2 && t_2.total > 0 && Array.isArray(t_2.result) && t_2.result.length <= 0) {
|
|
|
+ logger.error('getTokenTransfers token 数据异常 -->>>', t_2, options);
|
|
|
+ }
|
|
|
+
|
|
|
logger.log('getTokenTransfers token ret -->>> t_2', t_2);
|
|
|
setTransfersDataType('token', t_2.result)
|
|
|
let arr = t_1.result;
|
|
@@ -877,6 +891,9 @@ async function getTokenTransfers(opt) {
|
|
|
let arr2 = arr.concat(arr1);
|
|
|
t_1.result = arr2;
|
|
|
logger.log('getTokenTransfers-->>> concat t_1', t_1);
|
|
|
+ if (t_1.total) {
|
|
|
+ t_1.total = t_1.result.length
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//将结果排序
|
|
@@ -886,9 +903,11 @@ async function getTokenTransfers(opt) {
|
|
|
return t2.getTime() - t1.getTime()
|
|
|
})
|
|
|
logger.log('getTokenTransfers-->>> sort t_1', t_1);
|
|
|
+
|
|
|
+
|
|
|
return toJson(SUCCEED_CODE, t_1, null);
|
|
|
} catch (error) {
|
|
|
- logger.error("getTransactions error:", error)
|
|
|
+ logger.error("getTransactions error:", error, options)
|
|
|
return toJson(ERROR_CODE_001, null, error.toString());
|
|
|
}
|
|
|
} else if (options.type == 'transaction_hash') {//根据哈希查询
|
|
@@ -903,7 +922,7 @@ async function getTokenTransfers(opt) {
|
|
|
var obj = { result: arr }
|
|
|
return toJson(SUCCEED_CODE, obj, null);
|
|
|
} catch (error) {
|
|
|
- logger.error("native getTransaction error:", error)
|
|
|
+ logger.error("native getTransaction error:", error, options)
|
|
|
return toJson(ERROR_CODE_001, null, error.toString());
|
|
|
}
|
|
|
} else {
|