|  | @@ -586,7 +586,7 @@ async function transfers(obj, my_account_all_coins, logParams) {
 | 
	
		
			
				|  |  |          if (t_i == my_account_all_coins.transfer_arrays.length) {
 | 
	
		
			
				|  |  |              logger.log('归集日志上报:', logParams);
 | 
	
		
			
				|  |  |              logParams.type = report.REPORT_TYPE.collect_coins
 | 
	
		
			
				|  |  | -            var info = await queryCompanyInfoFromId(0);
 | 
	
		
			
				|  |  | +            // var info = await queryCompanyInfoFromId(0);
 | 
	
		
			
				|  |  |              // logParams.receiver_address_total_balance_after = await queryCollectBalance(info.user_address, obj.chain)
 | 
	
		
			
				|  |  |              //归集入库
 | 
	
		
			
				|  |  |              logParams.status = 0
 | 
	
	
		
			
				|  | @@ -665,7 +665,6 @@ const transfer_handle = async (obj) => {
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |      var ret = await transfer(obj);
 | 
	
		
			
				|  |  |      if (isTransferSucceed(ret)) {
 | 
	
		
			
				|  |  |          //缓存当前交易的 gas 费用
 | 
	
	
		
			
				|  | @@ -704,7 +703,6 @@ async function queryCollectBalance(address, chain) {
 | 
	
		
			
				|  |  |          logger.error('queryCollectBalance error', error.toString(), address, chain);
 | 
	
		
			
				|  |  |          return 0;
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  
 | 
	
	
		
			
				|  | @@ -806,6 +804,7 @@ const collectCoins = async (obj) => {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          obj.chain = chain;
 | 
	
		
			
				|  |  |          obj.transFerGasFree = transFerGasFree;
 | 
	
		
			
				|  |  | +        logParams.chain = chain
 | 
	
		
			
				|  |  |          logger.log('transfers--->', obj);
 | 
	
		
			
				|  |  |          var ret = await transfers(obj, my_account_all_coins, logParams);
 | 
	
		
			
				|  |  |          logger.log('归集结果=', ret);
 | 
	
	
		
			
				|  | @@ -906,20 +905,26 @@ 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
 | 
	
		
			
				|  |  | -        if (opts.contractAddress) { //如果存在就是代币
 | 
	
		
			
				|  |  | +        var ret = await transfer_(opts)
 | 
	
		
			
				|  |  | +        return toJson(SUCCEED_CODE, ret, "");
 | 
	
		
			
				|  |  | +    } catch (error) {
 | 
	
		
			
				|  |  | +        logger.tlog('transfer error:', error);
 | 
	
		
			
				|  |  | +        logger.error('重要消息-重要消息-重要消息 transfer error:', error.toString(), JSON.stringify(options))
 | 
	
		
			
				|  |  | +        if (error.reason != null) {
 | 
	
		
			
				|  |  | +            return toJson(ERROR_CODE_001, null, error.toString());
 | 
	
		
			
				|  |  | +        } else {
 | 
	
		
			
				|  |  | +            return toJson(ERROR_CODE_001, null, error.toString());
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +};
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -            // if (opts.contractAddress == SHIB_ADDRESS) {
 | 
	
		
			
				|  |  | -            //     //提币金额必须大于 20000 ,手续费 10000
 | 
	
		
			
				|  |  | -            //     if (parseInt(opts.amount) >= SHIB_AMOUNT_LIMIT) {
 | 
	
		
			
				|  |  | -            //         opts.amount = (parseInt(opts.amount) - SHIB_AMOUNT_FEE_LIMIT).toString()
 | 
	
		
			
				|  |  | -            //     } else {
 | 
	
		
			
				|  |  | -            //         return toJson(-1, null, "最低限额为 20000 个token.");
 | 
	
		
			
				|  |  | -            //     }
 | 
	
		
			
				|  |  | -            // }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +async function transfer_(opts) {
 | 
	
		
			
				|  |  | +    if (opts.chainId != utils.CHAIN_ID.czz) {
 | 
	
		
			
				|  |  | +        var options;
 | 
	
		
			
				|  |  | +        // sending 0.5 DAI tokens with 18 decimals on BSC testnet
 | 
	
		
			
				|  |  | +        if (opts.contractAddress) { //如果存在就是代币
 | 
	
		
			
				|  |  |              options = Moralis.TransferOptions = {
 | 
	
		
			
				|  |  |                  type: opts.type,
 | 
	
		
			
				|  |  |                  amount: opts.amount,
 | 
	
	
		
			
				|  | @@ -936,7 +941,6 @@ const transfer = async (obj) => {
 | 
	
		
			
				|  |  |              };
 | 
	
		
			
				|  |  |              logger.tlog("options native =", options, opts.chainId);
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  |          // Enable web3
 | 
	
		
			
				|  |  |          await Moralis.enableWeb3({
 | 
	
		
			
				|  |  |              //BSC mainnet = 0x38-56 testnet:0x61-97
 | 
	
	
		
			
				|  | @@ -946,17 +950,15 @@ const transfer = async (obj) => {
 | 
	
		
			
				|  |  |          logger.tlog("options id =", opts.chainId);
 | 
	
		
			
				|  |  |          var ret = await Moralis.transfer(options);
 | 
	
		
			
				|  |  |          logger.tlog("transfer 结果 =", ret);
 | 
	
		
			
				|  |  | -        return toJson(SUCCEED_CODE, ret, "");
 | 
	
		
			
				|  |  | -    } catch (error) {
 | 
	
		
			
				|  |  | -        logger.tlog('transfer error:', error);
 | 
	
		
			
				|  |  | -        logger.error('重要消息-重要消息-重要消息 transfer error:', error.toString(), JSON.stringify(options))
 | 
	
		
			
				|  |  | -        if (error.reason != null) {
 | 
	
		
			
				|  |  | -            return toJson(ERROR_CODE_001, null, error.toString());
 | 
	
		
			
				|  |  | -        } else {
 | 
	
		
			
				|  |  | -            return toJson(ERROR_CODE_001, null, error.toString());
 | 
	
		
			
				|  |  | +        return ret
 | 
	
		
			
				|  |  | +    } else {
 | 
	
		
			
				|  |  | +        switch (opts.chainId) {
 | 
	
		
			
				|  |  | +            case utils.CHAIN_ID.czz:
 | 
	
		
			
				|  |  | +                //todo...
 | 
	
		
			
				|  |  | +                break
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | -};
 | 
	
		
			
				|  |  | +}
 | 
	
		
			
				|  |  |  const getAllTokenWithdrawInfoLists = async (obj) => {
 | 
	
		
			
				|  |  |      try {
 | 
	
		
			
				|  |  |          var key = reids_token_config.TOKENWITHDRAW;
 | 
	
	
		
			
				|  | @@ -1347,6 +1349,12 @@ async function getTransferRecord(opts, type, use_moralis_sdk_) {
 | 
	
		
			
				|  |  |      //是否使用 moralis sdk 进行查询
 | 
	
		
			
				|  |  |      var use_moralis_sdk = use_moralis_sdk_
 | 
	
		
			
				|  |  |      var temp_opts = { ...opts }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    if (temp_opts.chain == utils.CHAIN_NAME.czz) {
 | 
	
		
			
				|  |  | +        use_moralis_sdk = 0;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      if (use_moralis_sdk) {
 | 
	
		
			
				|  |  |          var results = []
 | 
	
		
			
				|  |  |          if (type == 'native') {
 | 
	
	
		
			
				|  | @@ -1435,6 +1443,12 @@ async function getBalances(opts, type, use_moralis_sdk_) {
 | 
	
		
			
				|  |  |      //是否使用 moralis sdk 进行查询
 | 
	
		
			
				|  |  |      var use_moralis_sdk = use_moralis_sdk_
 | 
	
		
			
				|  |  |      var temp_opts = { ...opts }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    if (temp_opts.chain == utils.CHAIN_NAME.czz) {
 | 
	
		
			
				|  |  | +        use_moralis_sdk = 0;
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      if (use_moralis_sdk) {
 | 
	
		
			
				|  |  |          if (type == 'native') {
 | 
	
		
			
				|  |  |              return await Moralis.Web3API.account.getNativeBalance(temp_opts);
 |