From 513e5442723f501525bf9ca6210b16561e5d3a2b Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Tue, 24 Mar 2026 11:41:07 +0800
Subject: [PATCH] 1
---
trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiExchangeApplyOrderController.java | 21 +++++++++++++++++----
1 files changed, 17 insertions(+), 4 deletions(-)
diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiExchangeApplyOrderController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiExchangeApplyOrderController.java
index 56a58b9..5ab0981 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiExchangeApplyOrderController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiExchangeApplyOrderController.java
@@ -150,16 +150,29 @@
.eq(PurchaseRecord::getUserId, user.getUserId()));
if(ObjectUtil.isNotEmpty(purchaseRecord)){
PurchaseRecordDto purchaseRecordDto = ConverterUtil.convert(purchaseRecord, PurchaseRecordDto.class);
+ Item item = itemService.getOne(new LambdaQueryWrapper<Item>().eq(Item::getName, "CLK/USDT"));
+ if (item != null) {
+ WalletExtend walletExtend = walletExtendService.getOne(new LambdaQueryWrapper<>(WalletExtend.class)
+ .eq(WalletExtend::getWallettype, item.getSymbol())
+ .eq(WalletExtend::getPartyId, user.getUserId())
+ .last(" limit 1"));
+ if (walletExtend != null) {
+ purchaseRecordDto.setPurchaseQuantity(BigDecimal.valueOf(walletExtend.getAmount()).setScale(4,RoundingMode.HALF_UP));
+ }
+ }
+
purchaseRecordDto.setCurrentPrice(close);
//持仓市值
- purchaseRecordDto.setPositionvalue(close.multiply(purchaseRecordDto.getPurchaseQuantity()));
+ purchaseRecordDto.setPositionvalue(close.multiply(purchaseRecordDto.getPurchaseQuantity()).setScale(4, RoundingMode.HALF_UP));
//均价总额
BigDecimal currentTotalPrice = purchaseRecordDto.getPurchaseQuantity().multiply(purchaseRecord.getPurchasePrice());
BigDecimal profit = purchaseRecordDto.getPositionvalue().subtract(currentTotalPrice);
purchaseRecordDto.setProfit(profit.setScale(4, RoundingMode.HALF_UP));
- BigDecimal profitPercent = (purchaseRecordDto.getPositionvalue().subtract(currentTotalPrice)).divide(currentTotalPrice,4,RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP);
- purchaseRecordDto.setProfitPercent(profitPercent);
- purchaseRecordDto.setLockingTime(LocalDate.of(2026, 2, 9));
+ if (currentTotalPrice.compareTo(BigDecimal.ZERO) != 0) {
+ BigDecimal profitPercent = (purchaseRecordDto.getPositionvalue().subtract(currentTotalPrice)).divide(currentTotalPrice,4,RoundingMode.HALF_UP).multiply(new BigDecimal("100")).setScale(2, RoundingMode.HALF_UP);
+ purchaseRecordDto.setProfitPercent(profitPercent);
+ }
+ purchaseRecordDto.setLockingTime(LocalDate.of(2026, 2, 4));
return Result.succeed(purchaseRecordDto);
}
return Result.succeed(new PurchaseRecordDto());
--
Gitblit v1.9.3