From c7c4c4eec809cfd5e399edab50fae9bf68681585 Mon Sep 17 00:00:00 2001
From: zj <1772600164@qq.com>
Date: Tue, 03 Feb 2026 18:32:44 +0800
Subject: [PATCH] 1

---
 trading-order-admin/src/main/java/com/yami/trading/api/UD/UdunClient.java |   50 ++++++++++++++++++++++++++++++++------------------
 1 files changed, 32 insertions(+), 18 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/UD/UdunClient.java b/trading-order-admin/src/main/java/com/yami/trading/api/UD/UdunClient.java
index 5e3e6d8..f6b32cf 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/UD/UdunClient.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/UD/UdunClient.java
@@ -4,43 +4,46 @@
 import cn.hutool.core.util.StrUtil;
 import cn.hutool.http.HttpStatus;
 import cn.hutool.json.JSONUtil;
+import com.yami.trading.common.constants.Constants;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
 
 import java.math.BigDecimal;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+@Component
 public class UdunClient implements UdunApi {
     private static Logger logger = LoggerFactory.getLogger(UdunClient.class);
 
     /**
      * UDUN API Gateway
      */
-    private final String gateway;
-
-    /**
-     * UDUN Merchant Number
-     */
-    private final String merchantId;
+    private final String gateway =  "https://sig11.udun.io";
 
     /**
      * UDUN Merchant Key
      */
-    private final String merchantKey;
+    private final String merchantKey =  "871fb1a18afd7229f5e62e4cba5016a6";
 
     /**
-     * Callback to business system
+     * UDUN Merchant Number
      */
-    private final String defaultCallBackUrl;
+    private final String merchantId =  "321127";
 
-    public UdunClient(String gateway, String merchantId, String merchantKey, String defaultCallBackUrl) {
-        this.gateway = gateway;
-        this.merchantId = merchantId;
-        this.merchantKey = merchantKey;
-        this.defaultCallBackUrl = defaultCallBackUrl;
-    }
+    /**
+     * Callback 充值
+     */
+    private final String defaultCallBackUrl = Constants.API_HTTP + "api/channelBlockchain!rechargeCallback.action";
+
+    /**
+     * Callback 提币
+     */
+    private final String withdrawCallBackUrl =  Constants.API_HTTP + "api/withdraw/withdrawCallback.action";
+
+
 
     @Override
     public Address createAddress(String mainCoinType)  throws UdunException {
@@ -56,7 +59,7 @@
     public Address createAddress(String mainCoinType, String alias, String walletId, String callUrl) throws UdunException{
         Map<String, String> params = new HashMap<>();
         params.put("merchantId", merchantId);
-        params.put("coinType", mainCoinType);
+        params.put("mainCoinType", mainCoinType);
         params.put("callUrl", callUrl);
         params.put("walletId", walletId);
         params.put("alias", alias);
@@ -71,7 +74,7 @@
 
     @Override
     public ResultMsg withdraw(String address, BigDecimal amount, String mainCoinType, String coinType, String businessId, String memo) {
-        return withdraw(address, amount, mainCoinType, coinType, businessId, memo, defaultCallBackUrl);
+        return withdraw(address, amount, mainCoinType, coinType, businessId, memo, withdrawCallBackUrl);
     }
 
     @Override
@@ -90,7 +93,7 @@
 
     @Override
     public ResultMsg autoWithdraw(String address, BigDecimal amount, String mainCoinType, String coinType, String businessId, String memo) {
-        return autoWithdraw(address, amount, mainCoinType, coinType, businessId, memo, defaultCallBackUrl);
+        return autoWithdraw(address, amount, mainCoinType, coinType, businessId, memo, withdrawCallBackUrl);
     }
 
     @Override
@@ -129,4 +132,15 @@
         }
         return JSONUtil.toList(JSONUtil.parseArray(result.getData()), Coin.class);
     }
+
+    /*public static void main(String[] args) {
+        UdunClient udunClient = new UdunClient();
+        List<Coin> list =udunClient.listSupportCoin(false);
+        System.out.println(list);
+    }*/
+
+    public boolean checkSign(String timestamp, String nonce, String body, String sign) {
+        String checkSign = UdunUtils.sign(merchantKey, timestamp, nonce, body);
+        return checkSign.equals(sign);
+    }
 }

--
Gitblit v1.9.3