From e3bf96ad189e12d7c2201734e9121063e7f39a37 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 13 Nov 2020 15:32:03 +0800
Subject: [PATCH] modify

---
 src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java |   37 +++++++++++++++++++++++++++++++++++++
 1 files changed, 37 insertions(+), 0 deletions(-)

diff --git a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
index add560d..6b4f701 100644
--- a/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
+++ b/src/main/java/com/xcong/excoin/modules/member/service/impl/MemberServiceImpl.java
@@ -1,7 +1,9 @@
 package com.xcong.excoin.modules.member.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.date.DateUtil;
 import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.RandomUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
@@ -9,6 +11,8 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.xcong.excoin.common.entity.FebsResponse;
 import com.xcong.excoin.common.entity.QueryRequest;
+import com.xcong.excoin.common.utils.RedisUtils;
+import com.xcong.excoin.common.utils.TRC20ApiUtils;
 import com.xcong.excoin.modules.Sms106Send;
 import com.xcong.excoin.modules.member.dto.MemberDetailConfirmDto;
 import com.xcong.excoin.modules.member.entity.*;
@@ -71,6 +75,8 @@
 	private final AgentFriendRelationMapper agentFriendRelationMapper;
 
 	private final TdFinancialReordDao tdFinancialReordDao;
+
+	private final RedisUtils redisUtils;
 	
 	@Override
 	public IPage<AgentFriendRelationEntity> findAgentInfoListInPage(AgentFriendRelationEntity agentFriendRelationEntity,
@@ -540,6 +546,14 @@
 		
 		selectById.setStatus(MemberCoinWithdrawEntity.IS_STATUS_Y);
 		memberCoinWithdrawMapper.updateById(selectById);
+
+		if ("TRC20".equals(selectById.getLabel())) {
+			String orderNo = generateOrderNo(memberId);
+			TRC20ApiUtils.coinApply(orderNo, memberId.toString(), selectById.getSymbol(), selectById.getAmount().toPlainString(), selectById.getAddress());
+			selectById.setTag(orderNo);
+			memberCoinWithdrawMapper.updateById(selectById);
+		}
+
 		MemberEntity memberEntity = memberMapper.selectById(memberId);
 		String phone = memberEntity.getPhone();
 		//String email = memberEntity.getEmail();
@@ -579,6 +593,29 @@
          return new FebsResponse().success();
 	}
 
+	public String generateOrderNo(Long mid) {
+		StringBuilder orderNo = new StringBuilder();
+		String date = DateUtil.format(new Date(), "yyyyMMdd");
+		orderNo.append(date);
+		orderNo.append(mid);
+		orderNo.append(RandomUtil.randomNumbers(2));
+
+		Object countObj = redisUtils.get(date);
+		if (countObj == null) {
+			countObj = 0;
+		}
+		int count = (int) countObj;
+		count++;
+		redisUtils.set(date, count, 24 * 60 * 60);
+
+		int size = 4;
+		for (int i = 0; i < size - String.valueOf(count).length(); i++) {
+			orderNo.append("0");
+		}
+		orderNo.append(count);
+		return orderNo.toString();
+	}
+
 	@Override
 	@Transactional(rollbackFor = Exception.class)
 	public FebsResponse memberWithdrawCoinCancel(@NotNull(message = "{required}") Long id) {

--
Gitblit v1.9.1