From 6eef7f43f9ad3d82727fba36f543f268cfb646d2 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Tue, 09 Dec 2025 18:39:30 +0800
Subject: [PATCH] 大宗
---
trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java | 50 +++++++++++++++++++++++++++-----------------------
1 files changed, 27 insertions(+), 23 deletions(-)
diff --git a/trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java b/trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java
index 9c88e38..bfebf14 100644
--- a/trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java
+++ b/trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java
@@ -260,7 +260,7 @@
@Transactional
@Override
- public Result buyDz(String dzId, String password, double num, String partyId) {
+ public Result buyDz(String dzId, String password, double num, String partyId, Boolean isAdmin) {
try {
if (num <= 0) {
throw new YamiShopBindException("请输入");
@@ -307,11 +307,13 @@
return Result.failed("请购买最小数量");
}
}
- boolean isOpen = MarketOpenChecker.isMarketOpenBuyDz(Item.US_STOCKS);
- if (!isOpen) {
- return Result.failed("当前股市休市");
- }
+ if (!isAdmin) { //后台买入不判断
+ boolean isOpen = MarketOpenChecker.isMarketOpenBuyDz(Item.US_STOCKS);
+ if (!isOpen) {
+ return Result.failed("当前股市休市");
+ }
+ }
Wallet wallet = this.walletService.saveWalletByPartyId(partyId);
BigDecimal buyAmt;
@@ -521,7 +523,7 @@
@Transactional
@Override
- public Result closeDz(String id, Double num, String partyId) {
+ public Result closeDz(String id, Double num, String partyId, Boolean isAdmin) {
try {
ExchangeApplyOrderDz order = exchangeApplyOrderDzMapper.selectById(id);
if (order == null) {
@@ -535,6 +537,9 @@
}
if (num < 0 || num > order.getSymbolValue()) {
throw new YamiShopBindException("数量错误");
+ }
+ if (partyId == null) {
+ partyId = order.getPartyId();
}
StockDz stockDz = this.stockDzMapper.selectOne(new QueryWrapper<StockDz>().eq("uuid", order.getDzId()));
@@ -554,26 +559,25 @@
}
Date now = new Date();
- if (stockDz.getPeriod() != null && stockDz.getPeriod() > 0) {
- Calendar calendar = Calendar.getInstance();
- calendar.setTime(order.getCreateTime());
- calendar.add(Calendar.DATE, stockDz.getPeriod());
- // 锁仓时间
- Date resultTime = calendar.getTime();
+ if (!isAdmin) {
+ if (stockDz.getPeriod() != null && stockDz.getPeriod() > 0) {
+ Calendar calendar = Calendar.getInstance();
+ calendar.setTime(order.getCreateTime());
+ calendar.add(Calendar.DATE, stockDz.getPeriod());
+ // 锁仓时间
+ Date resultTime = calendar.getTime();
- if(now.getTime() < resultTime.getTime()){
- return Result.failed("未到平仓时间");
+ if(now.getTime() < resultTime.getTime()){
+ return Result.failed("未到平仓时间");
+ }
+ }
+ if (!stockDz.getStockName().contains("测试")) {
+ boolean isOpen = MarketOpenChecker.isMarketOpenByItemCloseType(Item.US_STOCKS);
+ if (!isOpen) {
+ return Result.failed("当前股市休市");
+ }
}
}
- if (stockDz.getStockName().contains("测试")) {
-
- } else {
- boolean isOpen = MarketOpenChecker.isMarketOpenByItemCloseType(Item.US_STOCKS);
- if (!isOpen) {
- return Result.failed("当前股市休市");
- }
- }
-
Wallet wallet = this.walletService.saveWalletByPartyId(order.getPartyId());
--
Gitblit v1.9.3