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/resources/mapper/modules/MemberCoinChargeDao.xml | 5 +++++
src/main/java/cc/mrbird/febs/mall/mapper/MemberCoinChargeDao.java | 1 +
src/main/java/cc/mrbird/febs/mall/service/impl/BlockSeriveImpl.java | 9 ++++++++-
3 files changed, 14 insertions(+), 1 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MemberCoinChargeDao.java b/src/main/java/cc/mrbird/febs/mall/mapper/MemberCoinChargeDao.java
index 347a5fc..ae4a7dc 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MemberCoinChargeDao.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MemberCoinChargeDao.java
@@ -12,4 +12,5 @@
List<MemberCoinChargeEntity> selectAllBySymbolAndTag(@Param("symbol") String symbol, @Param("tag") String tag, @Param("status") Integer status);
+ MemberCoinChargeEntity selectByHash(@Param("hash") String hash);
}
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();
}
diff --git a/src/main/resources/mapper/modules/MemberCoinChargeDao.xml b/src/main/resources/mapper/modules/MemberCoinChargeDao.xml
index c7ae181..23f5f8d 100644
--- a/src/main/resources/mapper/modules/MemberCoinChargeDao.xml
+++ b/src/main/resources/mapper/modules/MemberCoinChargeDao.xml
@@ -23,5 +23,10 @@
</if>
</select>
+ <select id="selectByHash" resultType="cc.mrbird.febs.mall.entity.MemberCoinChargeEntity">
+ select * from member_coin_charge
+ where hash = #{hash} limit 1
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1