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