From 292a4634d9c52ce193eca9de356d65960bdc35f4 Mon Sep 17 00:00:00 2001 From: xiaoyong931011 <15274802129@163.com> Date: Fri, 15 Jan 2021 18:20:37 +0800 Subject: [PATCH] 20210115 --- src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java | 29 ++++++++++++++++++++++++----- 1 files changed, 24 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java b/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java index 73d4a1e..29ce379 100644 --- a/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java +++ b/src/main/java/com/xcong/excoin/modules/coin/service/impl/BlockCoinServiceImpl.java @@ -57,6 +57,9 @@ private MemberWalletCoinDao memberWalletCoinDao; @Resource + private UsdtEthService usdtEthService; + + @Resource private RedisUtils redisUtils; private final static String EOS_SEQ_KEY = "eos_seq_key"; @@ -502,7 +505,7 @@ } Long memberId = memberCoinAddress.getMemberId(); // 查询钱包 并更新 - MemberWalletCoinEntity walletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.ROC.name()); + MemberWalletCoinEntity walletCoinEntity = memberWalletCoinDao.selectWalletCoinBymIdAndCode(memberId, CoinTypeEnum.RFNC.name()); if (walletCoinEntity == null) { // 创建一个钱包 // 创建这个钱包 @@ -518,15 +521,15 @@ memberWalletCoinDao.updateBlockBalance(walletCoinEntity.getId(), balance, BigDecimal.ZERO, 0); - String orderNo = insertCoinCharge(address, memberId, balance, CoinTypeEnum.ROC.name(), "", BigDecimal.ZERO, null); + String orderNo = insertCoinCharge(address, memberId, balance, CoinTypeEnum.RFNC.name(), "", BigDecimal.ZERO, null); // 插入财务记录 - LogRecordUtils.insertMemberAccountMoneyChange(memberId, "转入", balance, CoinTypeEnum.ROC.name(), 1, 1); + LogRecordUtils.insertMemberAccountMoneyChange(memberId, "转入", balance, CoinTypeEnum.RFNC.name(), 1, 1); try { ThreadPoolUtils.sendDingTalk(5); MemberEntity member = memberDao.selectById(memberId); if (StrUtil.isNotBlank(member.getPhone())) { - String amount = balance.toPlainString() + "ROC"; + String amount = balance.toPlainString() + "RFNC"; Sms106Send.sendRechargeMsg(member.getPhone(), DateUtil.format(new Date(), DatePattern.NORM_DATETIME_MINUTE_PATTERN), orderNo); } else { SubMailSend.sendRechargeMail(member.getEmail(), DateUtil.format(new Date(), DatePattern.NORM_DATETIME_MINUTE_PATTERN), orderNo); @@ -538,6 +541,7 @@ } @Override + @Transactional public void updateEthUsdtNew(EthUsdtChargeDto ethUsdtChargeDto) { String address = ethUsdtChargeDto.getAddress(); String hash = ethUsdtChargeDto.getHash(); @@ -549,7 +553,14 @@ if(CollectionUtils.isNotEmpty(memberCoinChargeEntities)){ return; } - MemberCoinAddressEntity coinAddressEntity = memberCoinAddressDao.selectBlockAddressWithTag(null, CoinTypeEnum.USDT.toString(), "ERC20"); + // 校验这个交易是否成功 + EthService ethService = new EthService(); + boolean b = ethService.checkTransferResult(hash); + if(!b){ + log.info("#USDT假充值:{}#", hash); + return; + } + MemberCoinAddressEntity coinAddressEntity = memberCoinAddressDao.selectCoinAddressByAddressAndSymbol(address, CoinTypeEnum.USDT.toString()); if (coinAddressEntity == null) { return; } @@ -576,6 +587,13 @@ } else { SubMailSend.sendRechargeMail(member.getEmail(), DateUtil.format(new Date(), DatePattern.NORM_DATETIME_MINUTE_PATTERN), orderNo); } + // 同步 + try{ + usdtEthService.pollByAddress(address); + }catch (Exception e){ + + } + } } @@ -603,4 +621,5 @@ memberCoinChargeDao.insert(memberCoinChargeEntity); return orderNo; } + } -- Gitblit v1.9.1