From 4d06b47e05ec85e23637a951ea1b1520cf666f81 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 06 Dec 2022 16:09:39 +0800
Subject: [PATCH] 20221130
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 42 ++++++++++++++++++++++++++++++++++++++++--
1 files changed, 40 insertions(+), 2 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
index 924b777..054371f 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java
@@ -487,6 +487,38 @@
if(ObjectUtil.isEmpty(dappMemberEntity)){
return;
}
+ //所有上级(不包含直属上级)
+ String refererIds = dappMemberEntity.getRefererIds();
+ List<String> refererIdList = StrUtil.split(refererIds, ',');
+ if(CollUtil.isNotEmpty(refererIdList)){
+ for(String inviteIdStr : refererIdList){
+ DappMemberEntity dappMemberEntityUp = dappMemberDao.selectMemberInfoByInviteId(inviteIdStr);
+ if(ObjectUtil.isEmpty(dappMemberEntityUp)){
+ continue;
+ }
+ String accountType = dappMemberEntityUp.getAccountType();
+ if(DataDictionaryEnum.BIG_BOSS.getCode().equals(accountType)){
+ continue;
+ }
+ //当前为BOSS,且直推中有两个BOSS以上,则升级BIG_BOSS
+ if(DataDictionaryEnum.BOSS.getCode().equals(accountType)){
+ Integer bossCount = dappMemberDao.selectCountByAccountTypeAndRefererId(DataDictionaryEnum.BOSS.getCode(),dappMemberEntityUp.getInviteId());
+ if(2 <= bossCount){
+ dappMemberDao.updateMemberAccountType(DataDictionaryEnum.BIG_BOSS.getCode(),dappMemberEntityUp.getId());
+ }
+ continue;
+ }
+ //当前为AGENT,且直推中有两个以上,则升级BOSS
+ if(DataDictionaryEnum.AGENT.getCode().equals(accountType)){
+ Integer bossCount = dappMemberDao.selectCountByAccountTypeAndRefererId(null,dappMemberEntityUp.getInviteId());
+ if(2 <= bossCount){
+ dappMemberDao.updateMemberAccountType(DataDictionaryEnum.BOSS.getCode(),dappMemberEntityUp.getId());
+ }
+ continue;
+ }
+ }
+ }
+ //直属上级
String accountType = dappMemberEntity.getAccountType();
if(DataDictionaryEnum.BIG_BOSS.getCode().equals(accountType)){
return;
@@ -523,12 +555,18 @@
//金额
BigDecimal amount = dappFundFlow.getAmount();
//目标地址
- String address = dappFundFlow.getAddress();
+ Long memberId = dappFundFlow.getMemberId();
+ DappMemberEntity dappMemberEntity = dappMemberDao.selectById(memberId);
+ if(ObjectUtil.isEmpty(dappMemberEntity)){
+ return;
+ }
+ String address = dappMemberEntity.getAddress();
+ log.info("{}",address);
String hash = ChainService.getInstance(ChainEnum.BNB.name()).transferBaseToken(address, amount);
if(StrUtil.isEmpty(hash)){
return;
}
- log.info("{},{}",id,hash);
+
dappFundFlow.setFromHash(hash);
dappFundFlowDao.updateById(dappFundFlow);
}
--
Gitblit v1.9.1