|
|
@@ -1,31 +1,35 @@
|
|
|
-const Config = require('./../config.js')
|
|
|
-const ListenConfig = require('./config/listen-config.js')
|
|
|
-const PrivateConfig = require('../../.')
|
|
|
+const Config = require('../../config/config.js')
|
|
|
+const ListenConfig = require('../../config/listen-config.js')
|
|
|
+const PrivateConfig = require('../../../PrivateConfig.js')
|
|
|
+const TimeKit = require('../../kit/time-kit')
|
|
|
const Web3 = require('web3')
|
|
|
const Tx = require('ethereumjs-tx')
|
|
|
-const MyKit = require('./kit/MyKit.js')
|
|
|
|
|
|
|
|
|
-const RPC_URL = 'https://bsc-dataseed1.binance.org:443'
|
|
|
-
|
|
|
class SimpleWeb3 {}
|
|
|
|
|
|
SimpleWeb3.init = function() {
|
|
|
- SimpleWeb3.web3 = new Web3(RPC_URL)
|
|
|
-
|
|
|
- Config.baseToken.contractModel = new SimpleWeb3.web3.eth.Contract(Config.BASE_ABI, Config.baseToken.contract, {
|
|
|
- from: PrivateConfig.address
|
|
|
- })
|
|
|
+ if (SimpleWeb3.web3) return
|
|
|
+
|
|
|
+ SimpleWeb3.web3 = new Web3(Config.WEB3_RPC_URL)
|
|
|
+
|
|
|
+ // Config.baseToken.contractModel = new SimpleWeb3.web3.eth.Contract(Config.BASE_ABI, Config.baseToken.contract, {
|
|
|
+ // from: PrivateConfig.address
|
|
|
+ // })
|
|
|
+ //
|
|
|
+ // for (const token of ListenConfig.tokenList) {
|
|
|
+ // token.contractModel = new SimpleWeb3.web3.eth.Contract(token.BASE_ABI, token.contract, {
|
|
|
+ // from: PrivateConfig.address
|
|
|
+ // })
|
|
|
+ // }
|
|
|
+}
|
|
|
|
|
|
- for (const token of ListenConfig.tokenList) {
|
|
|
- token.contractModel = new SimpleWeb3.web3.eth.Contract(token.BASE_ABI, token.contract, {
|
|
|
- from: PrivateConfig.address
|
|
|
- })
|
|
|
- }
|
|
|
+SimpleWeb3.getBalance = async function(address) {
|
|
|
+ return await SimpleWeb3.web3.eth.getBalance(address)
|
|
|
}
|
|
|
|
|
|
-SimpleWeb3.getRealBalance = async function() {
|
|
|
- const wei = await SimpleWeb3.web3.eth.getBalance(PrivateConfig.address)
|
|
|
+SimpleWeb3.getRealBalance = async function(address) {
|
|
|
+ const wei = await SimpleWeb3.getBalance(address)
|
|
|
|
|
|
return SimpleWeb3.web3.utils.fromWei(wei, 'ether')
|
|
|
}
|
|
|
@@ -45,12 +49,12 @@ SimpleWeb3.sendTransaction = async function(txObject) {
|
|
|
|
|
|
Config.baseToken.isSwap = false
|
|
|
} else {
|
|
|
- const time = MyKit.getTimeByMillisecond(new Date().getTime())
|
|
|
+ const time = TimeKit.getTimeByMillisecond(new Date().getTime())
|
|
|
txObject.data = undefined
|
|
|
console.log(`[发起新的交易]tx: ${JSON.stringify(txObject)}`)
|
|
|
console.log(`交易时间: ${time}, 交易回执: ${txHash}\n`)
|
|
|
|
|
|
- await MyKit.sleep(10 * 1000)
|
|
|
+ await TimeKit.sleep(10 * 1000)
|
|
|
Config.baseToken.isSwap = false
|
|
|
}
|
|
|
})
|
|
|
@@ -96,10 +100,10 @@ SimpleWeb3.transferTokenByAddress = async function(amount, to='0xA9D841B81da81c5
|
|
|
|
|
|
token.isTransfer = false
|
|
|
} else {
|
|
|
- const time = MyKit.getTimeByMillisecond(new Date().getTime())
|
|
|
+ const time = TimeKit.getTimeByMillisecond(new Date().getTime())
|
|
|
console.log(`[${time} 到交易所的转账]${token.symbol} 数额: ${balance}, 回执: ${txHash}\n`)
|
|
|
|
|
|
- await MyKit.sleep(20 * 1000)
|
|
|
+ await TimeKit.sleep(20 * 1000)
|
|
|
token.isTransfer = false
|
|
|
}
|
|
|
})
|
|
|
@@ -131,4 +135,6 @@ SimpleWeb3.transfer = async function(amount, to = '0xA9D841B81da81c5B94fCe514211
|
|
|
})
|
|
|
}
|
|
|
|
|
|
+SimpleWeb3.init()
|
|
|
+
|
|
|
module.exports = SimpleWeb3
|