Ver código fonte

多线程进行 trx_hash check

DevYK 2 anos atrás
pai
commit
4ea5892d69
2 arquivos alterados com 45 adições e 59 exclusões
  1. 10 25
      model/moralis_sdk.js
  2. 35 34
      routes/sdk.js

+ 10 - 25
model/moralis_sdk.js

@@ -605,7 +605,7 @@ async function transfers(obj, my_account_all_coins, logParams) {
         logParams.results = collects
         logParams.collects = JSON.stringify(collects_mysql)
         logParams.createTime = obj.createTime
-        logParams.before_gas_fee =obj.before_gas_fee
+        logParams.before_gas_fee = obj.before_gas_fee
         if (obj.address)
             logParams.user_address = obj.address
         if (t_i == my_account_all_coins.transfer_arrays.length) {
@@ -1486,19 +1486,14 @@ async function getTokenTransfersV2(opt) {
     }
 }
 
-// function test_() {
-//     var temp_opts = {}
-//     var bsc_ = utils.CHAIN_NAME.bsc_mainnet
-//     switch (bsc_) {
-//         case utils.CHAIN_NAME.bsc_mainnet:
-//         case utils.CHAIN_NAME.bsc_testnet:
-//             temp_opts.chain = 'bsc'
-//             break
-//     }
-//     console.log('temp_opts', temp_opts);
-// }
 
-// test_();
+function convertChain(chain) {
+    switch (chain) {
+        case utils.CHAIN_NAME.bsc_mainnet:
+        case utils.CHAIN_NAME.bsc_testnet:
+            return 'bsc'
+    }
+}
 
 /**
  * 获取交易记录 token,native 
@@ -1513,12 +1508,7 @@ async function getTransferRecord(opts, type, use_moralis_sdk_) {
     if (temp_opts.chain == utils.CHAIN_NAME.czz) {
         use_moralis_sdk = 0;
     } else if (use_moralis_sdk == 0) {
-        switch (temp_opts.chain) {
-            case utils.CHAIN_NAME.bsc_mainnet:
-            case utils.CHAIN_NAME.bsc_testnet:
-                temp_opts.chain = 'bsc'
-                break
-        }
+        temp_opts.chain = convertChain(temp_opts.chain)
     }
 
     if (use_moralis_sdk) {
@@ -1615,12 +1605,7 @@ async function getBalances(opts, type, use_moralis_sdk_) {
     if (temp_opts.chain == utils.CHAIN_NAME.czz) {
         use_moralis_sdk = 0;
     } else if (use_moralis_sdk == 0) {
-        switch (temp_opts.chain) {
-            case utils.CHAIN_NAME.bsc_mainnet:
-            case utils.CHAIN_NAME.bsc_testnet:
-                temp_opts.chain = 'bsc'
-                break
-        }
+        temp_opts.chain = convertChain(temp_opts.chain)
     }
 
     if (use_moralis_sdk) {

+ 35 - 34
routes/sdk.js

@@ -755,9 +755,38 @@ async function timer_transfer_czz_task() {
     }
 }
 
+async function checkout_taxhash(exec_obj) {
+    logger.info('bsc_log_monitoring exec start:', exec_obj)
+    var delay = 60 * 1000
+    try {
+        if (typeof exec_obj === 'string')
+            exec_obj = JSON.parse(exec_obj)
+    } catch (error) {
+        logger.error('bsc_log_monitoring:', error)
+    }
+
+    var tryCount = 5
+    do {
+        if (tryCount == 0) {
+            logger.error('数据在5分钟未更新', JSON.stringify(exec_obj))
+            break
+        }
+        if (exec_obj.transactionHash) {
+            var ret = await account_mysql.getAccountTransactions({
+                type: 'only_hash',
+                transaction_hash: exec_obj.transactionHash
+            })
+            if (ret && ret.code == 0 && ret.data.total > 0) {
+                break
+            }
+        }
+        --tryCount
+        logger.debug('getAccountTransactions', tryCount, exec_obj)
+        await utils.sleep(delay)
+    } while (tryCount >= 0);
+}
 
 async function bsc_log_monitoring() {
-    var delay = 60 * 1000
     while (1) {
         var exec_obj = await redis.redis_pop(reids_token_config.BSC_LOG_MONITORING_KEY)
         if (!exec_obj) {
@@ -765,35 +794,7 @@ async function bsc_log_monitoring() {
             logger.log("no new check tasks")
             continue
         }
-
-        logger.info('bsc_log_monitoring exec start:', exec_obj)
-
-        try {
-            if (typeof exec_obj === 'string')
-                exec_obj = JSON.parse(exec_obj)
-        } catch (error) {
-            logger.error('bsc_log_monitoring:', error)
-        }
-
-        var tryCount = 5
-        do {
-            if (tryCount == 0) {
-                logger.error('数据在5分钟未更新', JSON.stringify(exec_obj))
-                break
-            }
-            if (exec_obj.transactionHash) {
-                var ret = await account_mysql.getAccountTransactions({
-                    type: 'only_hash',
-                    transaction_hash: exec_obj.transactionHash
-                })
-                if (ret && ret.code == 0 && ret.data.total > 0) {
-                    break
-                }
-            }
-            --tryCount
-            logger.debug('getAccountTransactions', tryCount, exec_obj)
-            await utils.sleep(delay)
-        } while (tryCount >= 0);
+        checkout_taxhash(exec_obj)
     }
 }
 
@@ -829,10 +830,10 @@ check_czz_withdraw_task();
 bsc_log_monitoring()
 
 if (process.env.NODE_ENV == 'dev' || process.env.NODE_ENV == 'test') {
-    // timer_transfer_bsc_task()
-    // timer_transfer_czz_task()
-    // timer_collect_conis_bsc_task()
-    // timer_collect_conis_czz_task()
+    timer_transfer_bsc_task()
+    timer_transfer_czz_task()
+    timer_collect_conis_bsc_task()
+    timer_collect_conis_czz_task()
 }
 
 module.exports = router