From 0f900ede938b2dda75a09451e12f37f9facefc08 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Fri, 12 Dec 2025 14:39:01 +0800
Subject: [PATCH] 1
---
trading-order-service/src/main/java/com/yami/trading/service/dz/impl/StockDzServiceImpl.java | 55 ++++++++++++++++++++++++++++++-------------------------
1 files changed, 30 insertions(+), 25 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..3a0cf8f 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
@@ -246,11 +246,11 @@
}
@Override
- public Result getDzCheckList(int pageNum, int pageSize, String state, String stockCode, String stockType, List<String> checkedList) {
+ public Result getDzCheckList(int pageNum, int pageSize, String state, String stockCode, String stockType, String userName, List<String> checkedList) {
try {
Page page = new Page(pageNum, pageSize);
- stockDzMapper.getDzCheckList(page ,state, stockCode, stockType, checkedList);
+ stockDzMapper.getDzCheckList(page ,state, stockCode, stockType, userName, checkedList);
return Result.succeed(page);
} catch (Exception e) {
log.error(e.getMessage());
@@ -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,16 +307,19 @@
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;
if (isETF) {
buyAmt = new BigDecimal(num);
+ nowPrice = buyAmt;
} else {
buyAmt = nowPrice.multiply(new BigDecimal(num));
}
@@ -521,7 +524,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 +538,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 +560,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