From f5e6133809c553cfd9fb28ee61019927c547c374 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 08 Dec 2021 15:58:33 +0800
Subject: [PATCH] 20211208  fish

---
 src/main/java/com/xcong/excoin/modules/blackchain/service/Impl/BlockSeriveImpl.java |   33 ++++++++++++++++++++++++++++-----
 1 files changed, 28 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/blackchain/service/Impl/BlockSeriveImpl.java b/src/main/java/com/xcong/excoin/modules/blackchain/service/Impl/BlockSeriveImpl.java
index 48073ca..706dcaa 100644
--- a/src/main/java/com/xcong/excoin/modules/blackchain/service/Impl/BlockSeriveImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/blackchain/service/Impl/BlockSeriveImpl.java
@@ -1,10 +1,12 @@
 package com.xcong.excoin.modules.blackchain.service.Impl;
 
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 import javax.annotation.Resource;
 
+import com.xcong.excoin.common.enumerates.CoinTypeEnum;
 import com.xcong.excoin.modules.blackchain.service.*;
 import com.xcong.excoin.rabbit.producer.UsdtUpdateProducer;
 import lombok.extern.slf4j.Slf4j;
@@ -189,6 +191,31 @@
                             // 发送新增的地址到监听集合
                             usdtUpdateProducer.sendAddressMsg(address+","+"ERC20");
                         } else if ("TRC20".equals(lable)) {
+                            MemberCoinAddressEntity coinAddress = memberMapper.selectBlockAddress(Long.parseLong(mId), CoinTypeEnum.XCC.name());
+                            if (coinAddress != null) {
+                                address = coinAddress.getAddress();
+                                key = coinAddress.getPrivateKey();
+                            } else {
+                                Map<String, String> usdtMap = Trc20Service.createAddress();
+                                address = usdtMap.get("address");
+                                key = usdtMap.get("privateKey");
+                                map.put("address", address);
+                                // 发送新增的地址到监听集合
+                                usdtUpdateProducer.sendAddressMsg(address+","+"TRC20");
+                            }
+                        }
+                        break;
+                    case "ROC":
+                        address = RocService.createWallet();
+                        map.put("address", address);
+                        break;
+                    case "XCC" :
+                        MemberCoinAddressEntity trc20Usdt = memberMapper.selectBlockAddressWithTag(Long.parseLong(mId), CoinTypeEnum.USDT.name(), "TRC20");
+                        if (trc20Usdt != null) {
+                            address = trc20Usdt.getAddress();
+                            key = trc20Usdt.getPrivateKey();
+                            map.put("address", address);
+                        } else {
                             Map<String, String> usdtMap = Trc20Service.createAddress();
                             address = usdtMap.get("address");
                             key = usdtMap.get("privateKey");
@@ -196,10 +223,6 @@
                             // 发送新增的地址到监听集合
                             usdtUpdateProducer.sendAddressMsg(address+","+"TRC20");
                         }
-                        break;
-                    case "ROC":
-                        address = RocService.createWallet();
-                        map.put("address", address);
                         break;
                     default:
                         break;
@@ -211,7 +234,7 @@
                 coinAddress.setPrivateKey(key);
                 coinAddress.setSymbol(symbol);
                 coinAddress.setLabel(uuid);
-                if (symbol.equals("USDT")) {
+                if (symbol.equals("USDT") || "XCC".equals(symbol)) {
                     coinAddress.setTag(lable);
                 }
 

--
Gitblit v1.9.1