From 7da58964755c5c97fb1bd1f31a11827ff698fa2b Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Fri, 17 Dec 2021 16:30:26 +0800
Subject: [PATCH] Merge branch 'master' of http://120.27.238.55:7000/r/xc-video

---
 src/main/java/cc/mrbird/febs/pay/service/impl/PayServiceImpl.java |   36 ++++++++++++++++++++++++++++++++++--
 1 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/pay/service/impl/PayServiceImpl.java b/src/main/java/cc/mrbird/febs/pay/service/impl/PayServiceImpl.java
index b87a934..fbc1dd6 100644
--- a/src/main/java/cc/mrbird/febs/pay/service/impl/PayServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/pay/service/impl/PayServiceImpl.java
@@ -1,5 +1,9 @@
 package cc.mrbird.febs.pay.service.impl;
 
+import cc.mrbird.febs.blockchain.entity.MemberCoinAddressEntity;
+import cc.mrbird.febs.blockchain.enumerates.CoinTypeEnum;
+import cc.mrbird.febs.blockchain.mapper.MemberCoinAddressDao;
+import cc.mrbird.febs.blockchain.service.Trc20Service;
 import cc.mrbird.febs.common.exception.FebsException;
 import cc.mrbird.febs.common.utils.AppContants;
 import cc.mrbird.febs.common.utils.LoginUserUtil;
@@ -7,6 +11,7 @@
 import cc.mrbird.febs.pay.model.AliPayPassbackModel;
 import cc.mrbird.febs.pay.properties.AliPayProperties;
 import cc.mrbird.febs.pay.service.IPayService;
+import cc.mrbird.febs.rabbit.producer.UsdtUpdateProducer;
 import cc.mrbird.febs.video.dto.VipBuyDto;
 import cc.mrbird.febs.video.entity.DataDictionaryCustom;
 import cc.mrbird.febs.video.entity.VideoMemberEntity;
@@ -42,12 +47,14 @@
     private AliPayProperties aliPayProperties;
     @Resource
     private DataDictionaryCustomMapper dataDictionaryCustomMapper;
-
     @Resource
     private VideoVipOrderInfoMapper videoVipOrderInfoMapper;
-
     @Resource
     private VideoMemberMapper videoMemberMapper;
+    @Resource
+    private MemberCoinAddressDao memberCoinAddressDao;
+    @Resource
+    private UsdtUpdateProducer usdtUpdateProducer;
 
     @Value("${spring.profiles.active}")
     private String active;
@@ -118,4 +125,29 @@
         orderInfo.setPayTraderNo(params.get("trade_no"));
         videoVipOrderInfoMapper.updateById(orderInfo);
     }
+
+    @Override
+    public String findUsdtAddress() {
+        VideoMemberEntity loginUser = LoginUserUtil.getLoginUser();
+
+        MemberCoinAddressEntity coinAddress = this.memberCoinAddressDao.selectAddressByMemberIdAndSymbol(loginUser.getId(), CoinTypeEnum.USDT.name());
+        if (coinAddress == null) {
+            Map<String, String> usdtMap = Trc20Service.createAddress();
+            String address = usdtMap.get("address");
+            String key = usdtMap.get("privateKey");
+            // 发送新增的地址到监听集合
+            usdtUpdateProducer.sendAddressMsg(address+","+"TRC20");
+
+            coinAddress = new MemberCoinAddressEntity();
+            coinAddress.setAddress(address);
+            coinAddress.setIsBiyict(MemberCoinAddressEntity.IS_BIYICT_YES);
+            coinAddress.setMemberId(loginUser.getId());
+            coinAddress.setPrivateKey(key);
+            coinAddress.setSymbol(CoinTypeEnum.USDT.name());
+            this.memberCoinAddressDao.insert(coinAddress);
+
+            return address;
+        }
+        return coinAddress.getAddress();
+    }
 }

--
Gitblit v1.9.1