src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/dapp/dto/PriceDto.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/dapp/service/DappWalletService.java | ●●●●● patch | view | raw | blame | history | |
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | ●●●●● patch | view | raw | blame | history |
src/main/java/cc/mrbird/febs/dapp/controller/ApiDappMemberController.java
@@ -60,8 +60,8 @@ @ApiOperation(value = "计算最新价", notes = "计算最新价") @PostMapping(value = "/calPrice") public FebsResponse calPrice() { return new FebsResponse().success().data(dappWalletService.calPrice()); public FebsResponse calPrice(@RequestBody PriceDto priceDto) { return new FebsResponse().success().data(dappWalletService.calPrice(priceDto)); } @ApiOperation(value = "系统参数", notes = "系统参数") src/main/java/cc/mrbird/febs/dapp/dto/PriceDto.java
New file @@ -0,0 +1,19 @@ package cc.mrbird.febs.dapp.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; /** * @author wzy * @date 2022-06-13 **/ @Data @ApiModel(value = "PriceDto", description = "计算价格接收参数类") public class PriceDto { @ApiModelProperty(value = "价格", example = "1.0") private BigDecimal amount; } src/main/java/cc/mrbird/febs/dapp/service/DappWalletService.java
@@ -1,6 +1,7 @@ package cc.mrbird.febs.dapp.service; import cc.mrbird.febs.common.entity.QueryRequest; import cc.mrbird.febs.dapp.dto.PriceDto; import cc.mrbird.febs.dapp.dto.RecordInPageDto; import cc.mrbird.febs.dapp.dto.TransferDto; import cc.mrbird.febs.dapp.dto.WalletOperateDto; @@ -37,5 +38,5 @@ Long transfer(TransferDto transferDto); Map<String, BigDecimal> calPrice(); Map<String, BigDecimal> calPrice(PriceDto priceDto); } src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -9,6 +9,7 @@ import cc.mrbird.febs.dapp.chain.ChainEnum; import cc.mrbird.febs.dapp.chain.ChainService; import cc.mrbird.febs.dapp.chain.ContractChainService; import cc.mrbird.febs.dapp.dto.PriceDto; import cc.mrbird.febs.dapp.dto.RecordInPageDto; import cc.mrbird.febs.dapp.dto.TransferDto; import cc.mrbird.febs.dapp.dto.WalletOperateDto; @@ -287,7 +288,7 @@ } @Override public Map<String, BigDecimal> calPrice() { public Map<String, BigDecimal> calPrice(PriceDto priceDto) { DappMemberEntity member = LoginUserUtil.getAppUser(); @@ -305,7 +306,7 @@ // 源池代币剩余数量 BigDecimal sourceCoin = tfcInstance.balanceOf(ChainEnum.BSC_USDT_SOURCE.getAddress()); // 用户代币剩余数量 BigDecimal coin = tfcInstance.balanceOf(member.getAddress()); BigDecimal coin = priceDto.getAmount(); BigDecimal x = sourceU.divide(sourceCoin, tfcInstance.decimals(), RoundingMode.HALF_UP); BigDecimal y = sourceU.divide(sourceCoin.add(coin), tfcInstance.decimals(), RoundingMode.HALF_UP);