From 60d0e9bd70f87de69b378ab63bac60394e3ff696 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Mon, 11 May 2026 11:31:52 +0800
Subject: [PATCH] feat(gate): 添加多账号支持和日志标签区分功能

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

diff --git a/src/main/java/com/xcong/excoin/modules/gateApi/GateConfig.java b/src/main/java/com/xcong/excoin/modules/gateApi/GateConfig.java
index ca6446c..83e17d8 100644
--- a/src/main/java/com/xcong/excoin/modules/gateApi/GateConfig.java
+++ b/src/main/java/com/xcong/excoin/modules/gateApi/GateConfig.java
@@ -44,6 +44,8 @@
         MARK_PRICE
     }
 
+    /** 账号标签(用于日志区分多账号) */
+    private final String label;
     /** Gate API v4 密钥 */
     private final String apiKey;
     /** Gate API v4 签名密钥 */
@@ -78,6 +80,7 @@
     private final PnLPriceMode unrealizedPnlPriceMode;
 
     private GateConfig(Builder builder) {
+        this.label = builder.label;
         this.apiKey = builder.apiKey;
         this.apiSecret = builder.apiSecret;
         this.contract = builder.contract;
@@ -122,6 +125,7 @@
                 : "wss://ws-testnet.gate.com/v4/ws/futures/usdt";
     }
 
+    public String getLabel() { return label; }
     public String getApiKey() { return apiKey; }
     public String getApiSecret() { return apiSecret; }
     public String getContract() { return contract; }
@@ -147,6 +151,7 @@
      * GateConfig 的流式构造器,提供合理的默认值。
      */
     public static class Builder {
+        private String label = "default";
         private String apiKey;
         private String apiSecret;
         private String contract = "BTC_USDT";
@@ -164,6 +169,7 @@
         private BigDecimal contractMultiplier = new BigDecimal("0.001");
         private PnLPriceMode unrealizedPnlPriceMode = PnLPriceMode.LAST_PRICE;
 
+        public Builder label(String label) { this.label = label; return this; }
         public Builder apiKey(String apiKey) { this.apiKey = apiKey; return this; }
         public Builder apiSecret(String apiSecret) { this.apiSecret = apiSecret; return this; }
         public Builder contract(String contract) { this.contract = contract; return this; }

--
Gitblit v1.9.1