From a9d18fe810001b735d68f352a28abf48d6c04bf3 Mon Sep 17 00:00:00 2001
From: zyy <zyy@email.com>
Date: Fri, 17 Oct 2025 17:21:38 +0800
Subject: [PATCH] U盾充值

---
 trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiChannelBlockchainController.java |   18 ++++++++++++++----
 1 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiChannelBlockchainController.java b/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiChannelBlockchainController.java
index 8c683e1..ea19b96 100644
--- a/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiChannelBlockchainController.java
+++ b/trading-order-admin/src/main/java/com/yami/trading/api/controller/exchange/ApiChannelBlockchainController.java
@@ -10,6 +10,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.fasterxml.jackson.databind.ObjectMapper;
 import com.yami.trading.bean.vo.RechargeAddressVo;
+import com.yami.trading.common.constants.RedisKeys;
 import com.yami.trading.security.common.enums.CryptoCurrencyEnum;
 import com.yami.trading.security.common.util.LocalKeyStorageAESUtil;
 import com.yami.trading.api.UD.*;
@@ -213,13 +214,13 @@
                     ChannelBlockchain rechargeAddressVo = new ChannelBlockchain();
                     //创建地址
                     Address address;
-                    String ress = (String)redisTemplate.opsForValue().get(partyId + coinName);
+                    String ress = (String)redisTemplate.opsForValue().get(RedisKeys.BLOCKCHAIN_ADDRESS + partyId + coinName);
                     if(StringUtils.isNotEmpty(ress)){
                         rechargeAddressVo.setAddress(ress);
                     }else{
                         address = udunClient.createAddress(c.getMainCoinType());
                         rechargeAddressVo.setAddress(address.getAddress());
-                        redisTemplate.opsForValue().set(partyId + coinName, address.getAddress());
+                        redisTemplate.opsForValue().set(RedisKeys.BLOCKCHAIN_ADDRESS + partyId + coinName, address.getAddress());
                     }
                     //rechargeAddressVo.setAddress("test" + coinName);
                     rechargeAddressVo.setCoin(currencyEnum.getCoin());
@@ -246,6 +247,7 @@
 
         ResultMsg resultMsg = new ResultMsg();
         try{
+            log.info("===rechargeCallback===:{}", body);
             boolean flag = udunClient.checkSign(timestamp, nonce, body, sign);
             log.info("===rechargeCallback===sign:{}", flag);
 
@@ -268,8 +270,16 @@
                 resultMsg.setCode(200);
                 return resultMsg;
             }
-                SysUser user = sysUserService.getSysUserById( Long.getLong(blockchainOrder.getPartyId()));
-            rechargeBlockchainOrderService.manualReceipt(1,blockchainOrder.getPartyId(), BigDecimal.valueOf(success_amount),user.getUsername());
+            Integer status = Integer.valueOf(map.get("status").toString());
+            User user = userService.getById(blockchainOrder.getPartyId());
+
+            log.info("===rechargeCallback==d=blockchainOrder:{}", blockchainOrder);
+            if (status == 3) { //交易成功
+                rechargeBlockchainOrderService.manualReceipt(1,blockchainOrder.getOrderNo(), BigDecimal.valueOf(success_amount),user.getUserName());
+            } else if(status == 2) {   //驳回
+                rechargeBlockchainOrderService.refusalApply(blockchainOrder.getUuid(), "订单失败:" + status, user.getUserName());
+            }
+
             resultMsg.setCode(200);
             return resultMsg;
         }catch (Exception e){

--
Gitblit v1.9.3