From e7163ceea7970a5022da2f45b51edd0c749ad14e Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 01 Feb 2023 09:57:12 +0800
Subject: [PATCH] 1

---
 src/main/java/cc/mrbird/febs/mall/service/impl/BlockSeriveImpl.java |    9 ++++++++-
 1 files changed, 8 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/BlockSeriveImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/BlockSeriveImpl.java
index 8e7c211..971fbb8 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/BlockSeriveImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/BlockSeriveImpl.java
@@ -16,6 +16,7 @@
 import cc.mrbird.febs.mall.mapper.MemberCoinChargeDao;
 import cc.mrbird.febs.mall.service.BlockSerive;
 import cc.mrbird.febs.rabbit.producter.AgentProducer;
+import cn.hutool.core.util.ObjectUtil;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
@@ -117,6 +118,12 @@
     public FebsResponse setChargeInfo(ApiChargeInfoDto apiChargeInfoDto) {
         Long mId = LoginUserUtil.getLoginUser().getId();
         MallMember member = memberDao.selectById(mId);
+
+        String hash = apiChargeInfoDto.getHash();
+        MemberCoinChargeEntity memberCoinChargeEntityExist  = memberCoinChargeDao.selectByHash(hash);
+        if(ObjectUtil.isNotEmpty(memberCoinChargeEntityExist)){
+            return new FebsResponse().fail().message("提供正确的HASH值");
+        }
         MemberCoinChargeEntity memberCoinChargeEntity = new MemberCoinChargeEntity();
         memberCoinChargeEntity.setAddress(apiChargeInfoDto.getAddress());
         memberCoinChargeEntity.setMemberId(member.getId());
@@ -125,7 +132,7 @@
         memberCoinChargeEntity.setTag("ERC20");
         memberCoinChargeEntity.setStatus(1);
         memberCoinChargeEntity.setLastAmount(BigDecimal.ZERO);
-        memberCoinChargeEntity.setHash(apiChargeInfoDto.getHash());
+        memberCoinChargeEntity.setHash(hash);
         memberCoinChargeDao.insert(memberCoinChargeEntity);
         return new FebsResponse().success();
     }

--
Gitblit v1.9.1