From db9a7719bee7c82529b57535cde51ab23889c4ed Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Wed, 30 Sep 2026 15:06:25 +0800
Subject: [PATCH] feat(stations): 添加基础仓位止盈挂单参数功能

---
 src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java |   10 ++++++++++
 1 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java
index 3a8d315..7f1a9e3 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateConfigPersistenceService.java
@@ -3,6 +3,7 @@
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.SerializationFeature;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.PostConstruct;
@@ -18,6 +19,7 @@
  * 文件路径: config/gate-config-{md5(apiKey)}.json
  */
 @Slf4j
+@ConditionalOnProperty(name = "app.gate.enabled", havingValue = "true", matchIfMissing = true)
 @Service
 public class GateConfigPersistenceService {
 
@@ -104,6 +106,14 @@
                 .maxPositionSize(dto.getMaxPositionSize())
                 .stopLossCount(dto.getStopLossCount())
                 .takeProfitGridSpan(dto.getTakeProfitGridSpan())
+                .priceDriveEnabled(nvl(dto.getPriceDriveEnabled(), true))
+                .rounds(dto.getRounds())
+                .stopLossCountMode(nvl(dto.getStopLossCountMode(), "dual"))
+                .addPositionInterval(dto.getAddPositionInterval() >= 0 ? dto.getAddPositionInterval() : 3)
+                .addPositionQuantity(dto.getAddPositionQuantity() > 0 ? dto.getAddPositionQuantity() : 1)
+                .maxPositionPerSide(dto.getMaxPositionPerSide())
+                .addPositionStartThreshold(dto.getAddPositionStartThreshold() >= 0 ? dto.getAddPositionStartThreshold() : 1)
+                .placeExcessTakeProfit(dto.isPlaceExcessTakeProfit())
                 .build();
     }
 

--
Gitblit v1.9.1