mirror of
https://github.com/GMWalletApp/epusdt.git
synced 2026-07-07 18:26:16 +00:00
change tron scan logic
This commit is contained in:
@@ -216,8 +216,29 @@ func TryProcessEvmERC20Transfer(chainNetwork string, contract common.Address, to
|
|||||||
log.Sugar.Infof("[%s-%s][%s] skip non-positive or nil amount", net, tokenSym, walletAddr)
|
log.Sugar.Infof("[%s-%s][%s] skip non-positive or nil amount", net, tokenSym, walletAddr)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
chainTokens, err := data.ListChainTokens(chainNetwork)
|
||||||
|
if err != nil {
|
||||||
|
log.Sugar.Warnf("[%s-%s] load chain tokens: %v", net, tokenSym, err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
var tokenConfig *mdb.ChainToken
|
||||||
|
for _, t := range chainTokens {
|
||||||
|
if strings.EqualFold(t.Symbol, tokenSym) {
|
||||||
|
tokenConfig = &t
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if tokenConfig == nil || !tokenConfig.Enabled {
|
||||||
|
log.Sugar.Warnf("[%s-%s] token not enabled or configured in chain_tokens", net, tokenSym)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
pow := decimal.New(1, int32(tokenConfig.Decimals))
|
||||||
|
log.Sugar.Warnf("tokenConfig.Decimals %d pow %s", tokenConfig.Decimals, pow.String())
|
||||||
|
|
||||||
decimalQuant := decimal.NewFromBigInt(rawValue, 0)
|
decimalQuant := decimal.NewFromBigInt(rawValue, 0)
|
||||||
amount := math.MustParsePrecFloat64(decimalQuant.Div(decimal.NewFromInt(1_000_000)).InexactFloat64(), 2)
|
amount := math.MustParsePrecFloat64(decimalQuant.Div(pow).InexactFloat64(), 2)
|
||||||
if amount <= 0 {
|
if amount <= 0 {
|
||||||
log.Sugar.Warnf("[%s-%s][%s] skip non-positive amount %.2f", net, tokenSym, walletAddr, amount)
|
log.Sugar.Warnf("[%s-%s][%s] skip non-positive amount %.2f", net, tokenSym, walletAddr, amount)
|
||||||
return
|
return
|
||||||
|
|||||||
+12
-1
@@ -16,13 +16,24 @@ func Start() {
|
|||||||
go StartTronBlockScannerListener()
|
go StartTronBlockScannerListener()
|
||||||
|
|
||||||
c := cron.New()
|
c := cron.New()
|
||||||
|
|
||||||
|
// Solana polling
|
||||||
|
_, err := c.AddJob("@every 5s", ListenSolJob{})
|
||||||
|
if err != nil {
|
||||||
|
log.Sugar.Errorf("[task] Failed to add ListenSolJob: %v", err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
log.Sugar.Info("[task] ListenSolJob scheduled successfully (@every 5s)")
|
||||||
|
|
||||||
// RPC node health checks
|
// RPC node health checks
|
||||||
_, err := c.AddJob("@every 30s", RpcHealthJob{})
|
_, err = c.AddJob("@every 30s", RpcHealthJob{})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Sugar.Errorf("[task] Failed to add RpcHealthJob: %v", err)
|
log.Sugar.Errorf("[task] Failed to add RpcHealthJob: %v", err)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
log.Sugar.Info("[task] RpcHealthJob scheduled successfully (@every 30s)")
|
log.Sugar.Info("[task] RpcHealthJob scheduled successfully (@every 30s)")
|
||||||
|
|
||||||
c.Start()
|
c.Start()
|
||||||
log.Sugar.Info("[task] Task scheduler started")
|
log.Sugar.Info("[task] Task scheduler started")
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user