From a26796c06e7dbf5e1f96dca971b08e1278103f29 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Mon, 13 Jun 2022 18:14:33 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/dapp/service/impl/BscCoinContractEvent.java | 2 +-
src/test/java/cc/mrbird/febs/ChainTest.java | 10 ++++++++++
src/main/resources/application-test.yml | 6 +++---
3 files changed, 14 insertions(+), 4 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..0e51a29 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())) {
diff --git a/src/main/resources/application-test.yml b/src/main/resources/application-test.yml
index c9b313a..886833c 100644
--- a/src/main/resources/application-test.yml
+++ b/src/main/resources/application-test.yml
@@ -2,7 +2,7 @@
datasource:
dynamic:
# 是否开启 SQL日志输出,生产环境建议关闭,有性能损耗
- p6spy: false
+ p6spy: true
hikari:
connection-timeout: 30000
max-lifetime: 1800000
@@ -49,5 +49,5 @@
publisher-confirm-type: correlated
system:
- online-transfer: false
- chain-listener: false
\ No newline at end of file
+ online-transfer: true
+ chain-listener: true
\ No newline at end of file
diff --git a/src/test/java/cc/mrbird/febs/ChainTest.java b/src/test/java/cc/mrbird/febs/ChainTest.java
index dfd0d1f..95c5b3d 100644
--- a/src/test/java/cc/mrbird/febs/ChainTest.java
+++ b/src/test/java/cc/mrbird/febs/ChainTest.java
@@ -15,6 +15,8 @@
import org.springframework.boot.test.context.SpringBootTest;
import java.math.BigDecimal;
+import java.math.BigInteger;
+import java.math.RoundingMode;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -95,4 +97,12 @@
public void userBuyRewardTest() {
chainProducer.sendUserBuyReward(56L);
}
+
+ @Test
+ public void coinDecimalsTest() {
+ int decimals = ChainService.getInstance(ChainEnum.BSC_TFC.name()).decimals();
+ BigInteger bigInteger = new BigInteger("110000000000");
+ BigDecimal amount = new BigDecimal(bigInteger.toString()).divide(BigDecimal.TEN.pow(decimals), decimals, RoundingMode.HALF_DOWN);
+ System.out.println(amount);
+ }
}
--
Gitblit v1.9.1