修改eth转账的gas计算

This commit is contained in:
CounterFire2023 2023-08-03 15:37:54 +08:00
parent c22af27f48
commit eaebdbb80e
4 changed files with 7 additions and 2 deletions

View File

@ -14,6 +14,7 @@ import assert from 'assert'
import { IPriceData } from 'structs/PriceData' import { IPriceData } from 'structs/PriceData'
import { IChainData } from 'structs/ChainData' import { IChainData } from 'structs/ChainData'
import { PriceSvr } from 'service/price.service' import { PriceSvr } from 'service/price.service'
import { CHAIN_GAS_BOOST } from 'common/Constants'
@singleton @singleton
export class BlockChain { export class BlockChain {
@ -121,7 +122,7 @@ export class BlockChain {
return this.web3.eth.sendTransaction({ return this.web3.eth.sendTransaction({
from, from,
to, to,
gas: 21000, gas: (gas * CHAIN_GAS_BOOST) | 0,
value: amountToSend, value: amountToSend,
}) })
} }

View File

@ -5,6 +5,7 @@ import { Contract } from 'web3-eth-contract'
import { Account } from 'web3-core' import { Account } from 'web3-core'
import { AllChains } from './allchain' import { AllChains } from './allchain'
import { HttpRetryProvider } from './HttpRetryProvider' import { HttpRetryProvider } from './HttpRetryProvider'
import { CHAIN_GAS_BOOST } from 'common/Constants'
const abiFt = require('abis/ERC20.json').abi const abiFt = require('abis/ERC20.json').abi
export class ERC20Reactor { export class ERC20Reactor {
@ -150,6 +151,7 @@ export class ERC20Reactor {
from === this.account.address from === this.account.address
? await contract.methods.transfer(to, amountBN).estimateGas() ? await contract.methods.transfer(to, amountBN).estimateGas()
: await contract.methods.transferFrom(from, to, amountBN).estimateGas() : await contract.methods.transferFrom(from, to, amountBN).estimateGas()
gasEstimate = (gasEstimate * CHAIN_GAS_BOOST) | 0
if (estimate) { if (estimate) {
return gasEstimate return gasEstimate
} }

View File

@ -210,7 +210,7 @@ export const AllChains = [
{ {
name: 'Arbitrum One', name: 'Arbitrum One',
type: 'Mainnet', type: 'Mainnet',
rpc: 'https://endpoints.omniatech.io/v1/arbitrum/one/public|https://rpc.ankr.com/arbitrum', rpc: 'https://arb1.arbitrum.io/rpc',
id: 42161, id: 42161,
network: 'ARBITRUM', network: 'ARBITRUM',
symbol: 'ETH', symbol: 'ETH',

View File

@ -11,3 +11,5 @@ export const CONFIRM_MAIL_HTML = `
<p>, , , , 使MetaMask的浏览器打开</p> <p>, , , , 使MetaMask的浏览器打开</p>
<p><a href="{{link}}" target="_blank">{{link2}}</a></p> <p><a href="{{link}}" target="_blank">{{link2}}</a></p>
` `
export const CHAIN_GAS_BOOST = 1.3