From 44633e4949dfb1b6e72f7cb2c22f28c131045afa Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Tue, 14 Jun 2022 18:30:11 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
index 4d17957..273d30f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java
@@ -100,7 +100,7 @@
             }
 
             BigInteger tokens = e.tokens;
-            BigDecimal amount = BigDecimal.valueOf(tokens.intValue()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
+            BigDecimal amount = new BigDecimal(tokens.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
 
             // 如果转账对象地址不为源池地址,注册该用户并绑定上下级关系
             if (!e.to.equals(ChainEnum.BSC_TFC_SOURCE.getAddress().toLowerCase())) {
@@ -154,6 +154,10 @@
                 }
                 OnlineTransferUtil.addTransferRecord(e.from, e.to, amount, e.log.getTransactionHash(), DappTransferRecordEntity.TRANSFER_SOURCE_FLAG_APPLICATION, AppContants.SYMBOL_COIN);
 
+                if (fundFlow.getAmount().add(fundFlow.getFee()).compareTo(amount) != 0) {
+                    return;
+                }
+
                 BigDecimal newPrice = fundFlow.getNewestPrice();
                 BigDecimal transferAmount = amount.multiply(newPrice);
 

--
Gitblit v1.9.1