From d0dd32f897c2b6786f4da8b860b7dcb58a71ac62 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 26 Aug 2022 16:11:44 +0800
Subject: [PATCH] fix
---
src/main/java/cc/mrbird/febs/dapp/service/impl/DappSystemServiceImpl.java | 2
src/main/java/cc/mrbird/febs/dapp/mapper/DappAchieveMemberTreeDao.java | 10 ++-
src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java | 2
src/main/java/cc/mrbird/febs/dapp/vo/TeamMatrixVo.java | 9 +++
src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java | 41 ++++++++++---
src/main/java/cc/mrbird/febs/dapp/entity/DappAchieveMemberTreeEntity.java | 7 ++
src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java | 2
src/main/resources/mapper/dapp/DappMemberDao.xml | 13 ----
src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java | 2
src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml | 22 +++++--
src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java | 6 ++
src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java | 2
src/main/java/cc/mrbird/febs/dapp/vo/TeamListVo.java | 16 ++--
13 files changed, 86 insertions(+), 48 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java b/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java
index 4c36764..fb614b1 100644
--- a/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java
+++ b/src/main/java/cc/mrbird/febs/dapp/dto/RecordInPageDto.java
@@ -18,6 +18,6 @@
@ApiModelProperty(value = "每页数量")
private Integer pageSize = 10;
- @ApiModelProperty(value = "类型", example = "1-买入 2-卖出 3-采矿")
+ @ApiModelProperty(value = "类型", example = "1-认购 2-提现 3-矩阵收益 4-直推收益")
private Integer type;
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/entity/DappAchieveMemberTreeEntity.java b/src/main/java/cc/mrbird/febs/dapp/entity/DappAchieveMemberTreeEntity.java
index 0b6971c..36c58e6 100644
--- a/src/main/java/cc/mrbird/febs/dapp/entity/DappAchieveMemberTreeEntity.java
+++ b/src/main/java/cc/mrbird/febs/dapp/entity/DappAchieveMemberTreeEntity.java
@@ -1,6 +1,7 @@
package cc.mrbird.febs.dapp.entity;
import cc.mrbird.febs.common.entity.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
@@ -21,4 +22,10 @@
private Integer hasMoney;
private Integer deep;
+
+ @TableField(exist = false)
+ private String inviteId;
+
+ @TableField(exist = false)
+ private String address;
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappAchieveMemberTreeDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappAchieveMemberTreeDao.java
index 9554766..62ec4f1 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappAchieveMemberTreeDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappAchieveMemberTreeDao.java
@@ -8,13 +8,15 @@
public interface DappAchieveMemberTreeDao extends BaseMapper<DappAchieveMemberTreeEntity> {
- List<DappAchieveMemberTreeEntity> selectNotBottomNodeInMatrix(Long memberId);
+ List<DappAchieveMemberTreeEntity> selectNotBottomNodeInMatrix(@Param("memberId") Long memberId);
- List<DappAchieveMemberTreeEntity> selectMatrixTreeByTopNode(Long memberId);
+ List<DappAchieveMemberTreeEntity> selectMatrixTreeByTopNode(@Param("memberId") Long memberId, @Param("hasMoney") Integer hasMoney);
DappAchieveMemberTreeEntity selectNodeByDeep(@Param("memberId") Long memberId, @Param("deep") Integer deep);
- int resetMatrixTree(Long memberId);
+ List<DappAchieveMemberTreeEntity> selectMatrixChildNode(@Param("topNode") Long topNode, @Param("parentNode") Long parentNode);
- int reentryMoney(Long memberId);
+ int resetMatrixTree(@Param("memberId") Long memberId);
+
+ int reentryMoney(@Param("memberId") Long memberId);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java b/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java
index 47e2449..15107c2 100644
--- a/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java
+++ b/src/main/java/cc/mrbird/febs/dapp/mapper/DappMemberDao.java
@@ -37,7 +37,5 @@
BigDecimal selectChildHoldAmount(@Param("inviteId") String inviteId);
- IPage<TeamListVo> selectTeamListInPage(@Param("record") TeamListDto teamListDto, Page<TeamListDto> page);
-
List<DappMemberEntity> selectMakerAddress();
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
index 1b64fb5..c33f9e8 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/DappMemberService.java
@@ -42,5 +42,5 @@
DappMemberEntity insertMember(String address, String refererId, String chainType, String accountType);
- List<TeamListVo> findTeamList(TeamListDto teamListDto);
+ TeamListVo findTeamList(TeamListDto teamListDto);
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
index e48676d..e39ba60 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappMemberServiceImpl.java
@@ -37,7 +37,7 @@
import java.util.Map;
/**
- * @author
+ * @author
* @date 2022-03-17
**/
@Service
@@ -49,7 +49,8 @@
private final DappWalletMineDao dappWalletMineDao;
private final DappTransferRecordDao dappTransferRecordDao;
private final RedisUtils redisUtils;
- private final DataDictionaryCustomMapper dataDictionaryCustomMapper;
+
+ private final DappAchieveMemberTreeDao dappAchieveMemberTreeDao;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -78,7 +79,7 @@
member.setInviteId(ShareCodeUtil.toSerialCode(member.getId()));
member.setRefererId(approveDto.getRefererId());
- if (StrUtil.isNotBlank(approveDto.getRefererId())){
+ if (StrUtil.isNotBlank(approveDto.getRefererId())) {
boolean flag = false;
String parentId = approveDto.getRefererId();
String ids = "";
@@ -94,7 +95,7 @@
break;
}
parentId = parentMember.getRefererId();
- if(StringUtils.isBlank(parentId)){
+ if (StringUtils.isBlank(parentId)) {
break;
}
if (parentMember.getRefererId().equals(parentMember.getInviteId())) {
@@ -258,7 +259,7 @@
@Override
public IPage<DappTransferRecordEntity> selectTransferInPage(DappTransferRecordEntity transfer, QueryRequest request) {
Page<DappTransferRecordEntity> page = new Page<>(request.getPageNum(), request.getPageSize());
- return dappTransferRecordDao.selectInPage(transfer,page);
+ return dappTransferRecordDao.selectInPage(transfer, page);
}
@Override
@@ -298,7 +299,7 @@
member.setInviteId(ShareCodeUtil.toSerialCode(member.getId()));
member.setRefererId(refererId);
- if (StrUtil.isNotBlank(refererId)){
+ if (StrUtil.isNotBlank(refererId)) {
boolean flag = false;
String parentId = refererId;
String ids = "";
@@ -322,7 +323,7 @@
break;
}
parentId = parentMember.getRefererId();
- if(StringUtils.isBlank(parentId) || "0".equals(parentId)){
+ if (StringUtils.isBlank(parentId) || "0".equals(parentId)) {
break;
}
if (parentMember.getRefererId().equals(parentMember.getInviteId())) {
@@ -338,10 +339,28 @@
}
@Override
- public List<TeamListVo> findTeamList(TeamListDto teamListDto) {
+ public TeamListVo findTeamList(TeamListDto teamListDto) {
DappMemberEntity member = LoginUserUtil.getAppUser();
- Page<TeamListDto> page = new Page<>(teamListDto.getPageNum(), teamListDto.getPageSize());
- teamListDto.setInviteId(member.getInviteId());
- return dappMemberDao.selectTeamListInPage(teamListDto, page).getRecords();
+
+ DappAchieveMemberTreeEntity topNode = dappAchieveMemberTreeDao.selectNodeByDeep(member.getId(), 1);
+ return buildTeamMatrix(topNode);
+ }
+
+ public TeamListVo buildTeamMatrix(DappAchieveMemberTreeEntity node) {
+ List<DappAchieveMemberTreeEntity> childNodes = dappAchieveMemberTreeDao.selectMatrixChildNode(node.getTopNode(), node.getTreeNode());
+
+ TeamListVo teamListVo = new TeamListVo();
+ teamListVo.setName(node.getInviteId());
+ teamListVo.setHasMoney(node.getHasMoney());
+
+ if (CollUtil.isEmpty(childNodes)) {
+ return teamListVo;
+ }
+
+ List<TeamListVo> list = new ArrayList<>();
+ for (DappAchieveMemberTreeEntity childNode : childNodes) {
+ list.add(buildTeamMatrix(childNode));
+ }
+ return teamListVo;
}
}
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 4491e60..9391ffb 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
@@ -721,7 +721,7 @@
// 完成矩阵树,并重置矩阵且重入
public void finishMatrixTree(Long memberId) {
- List<DappAchieveMemberTreeEntity> matrixTree = dappAchieveMemberTreeDao.selectMatrixTreeByTopNode(memberId);
+ List<DappAchieveMemberTreeEntity> matrixTree = dappAchieveMemberTreeDao.selectMatrixTreeByTopNode(memberId, 1);
// 如果达到标准,则重置该矩阵树
if (matrixTree.size() == 7) {
dappAchieveMemberTreeDao.resetMatrixTree(memberId);
diff --git a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
index 379f1aa..1fe9315 100644
--- a/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/dapp/service/impl/DappWalletServiceImpl.java
@@ -68,6 +68,8 @@
walletInfo.setInviteId(member.getInviteId());
walletInfo.setBalance(walletCoin.getAvailableAmount());
walletInfo.setHasBuy(memberInfo.getActiveStatus());
+ walletInfo.setOutCnt(1);
+ walletInfo.setProfit(BigDecimal.TEN);
return walletInfo;
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/vo/TeamListVo.java b/src/main/java/cc/mrbird/febs/dapp/vo/TeamListVo.java
index 1d2d969..c7829f9 100644
--- a/src/main/java/cc/mrbird/febs/dapp/vo/TeamListVo.java
+++ b/src/main/java/cc/mrbird/febs/dapp/vo/TeamListVo.java
@@ -1,10 +1,12 @@
package cc.mrbird.febs.dapp.vo;
import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.math.RoundingMode;
+import java.util.List;
/**
* @author wzy
@@ -14,15 +16,13 @@
@ApiModel(value = "TeamLIstVo", description = "团队列表接口返回参数类")
public class TeamListVo {
- private String address;
+ @ApiModelProperty(value = "名称")
+ private String name;
- private Integer count;
+ @ApiModelProperty(value = "是否认购")
+ private int hasMoney;
- private BigDecimal coinCount;
+ @ApiModelProperty(value = "子节点")
+ private List<TeamListVo> children;
- private BigDecimal selfCoinCount;
-
- public BigDecimal getCoinCount() {
- return coinCount.setScale(2, RoundingMode.HALF_DOWN);
- }
}
diff --git a/src/main/java/cc/mrbird/febs/dapp/vo/TeamMatrixVo.java b/src/main/java/cc/mrbird/febs/dapp/vo/TeamMatrixVo.java
new file mode 100644
index 0000000..e927938
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/dapp/vo/TeamMatrixVo.java
@@ -0,0 +1,9 @@
+package cc.mrbird.febs.dapp.vo;
+
+/**
+ * @author wzy
+ * @date 2022-08-26
+ **/
+public class TeamMatrixVo {
+
+}
diff --git a/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java b/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java
index 0b78718..8f5b1d1 100644
--- a/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java
+++ b/src/main/java/cc/mrbird/febs/dapp/vo/WalletInfoVo.java
@@ -23,6 +23,12 @@
@ApiModelProperty(value = "余额")
private BigDecimal balance;
+ @ApiModelProperty(value = "出局次数")
+ private int outCnt;
+
+ @ApiModelProperty(value = "收益")
+ private BigDecimal profit;
+
@ApiModelProperty(value = "是否购买")
private Integer hasBuy;
}
diff --git a/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml b/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml
index be96535..2f3a29a 100644
--- a/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml
+++ b/src/main/resources/mapper/dapp/DappAchieveMemberTreeDao.xml
@@ -9,23 +9,31 @@
<select id="selectMatrixTreeByTopNode" resultType="cc.mrbird.febs.dapp.entity.DappAchieveMemberTreeEntity">
select * from dapp_achieve_member_tree
- where top_node=#{memberId} and has_money=1
+ where top_node=#{memberId}
+ <if test="hasMoney != null">
+ and has_money=#{hasMoney}
+ </if>
</select>
<select id="selectNodeByDeep" resultType="cc.mrbird.febs.dapp.entity.DappAchieveMemberTreeEntity">
- select * from dapp_achieve_member_tree
- where tree_node=#{memberId} and deep=#{deep}
+ select a.*, b.invite_id, b.address from dapp_achieve_member_tree a, dapp_member b
+ where a.tree_node=#{memberId} and a.deep=#{deep} and a.tree_node=b.id
</select>
- <select id="resetMatrixTree" resultType="java.lang.Integer">
+ <select id="selectMatrixChildNode" resultType="cc.mrbird.febs.dapp.entity.DappAchieveMemberTreeEntity">
+ select a.*, b.invite_id, b.address from dapp_achieve_member_tree a, , dapp_member b
+ where a.top_node=#{topNode} and a.parent_node=#{parentNode} and a.tree_node=b.id
+ </select>
+
+ <update id="resetMatrixTree">
update dapp_achieve_member_tree
set has_money=2
where top_node=#{memberId} and deep in (2,3)
- </select>
+ </update>
- <select id="reentryMoney" resultType="java.lang.Integer">
+ <update id="reentryMoney">
update dapp_achieve_member_tree
set has_money=1
where tree_node=#{memberId}
- </select>
+ </update>
</mapper>
\ No newline at end of file
diff --git a/src/main/resources/mapper/dapp/DappMemberDao.xml b/src/main/resources/mapper/dapp/DappMemberDao.xml
index 9238821..8041ce9 100644
--- a/src/main/resources/mapper/dapp/DappMemberDao.xml
+++ b/src/main/resources/mapper/dapp/DappMemberDao.xml
@@ -110,19 +110,6 @@
where find_in_set(#{inviteId}, fee_profit_ids)
</select>
-<!-- where find_in_set(#{record.inviteId}, a.fee_profit_ids)-->
- <select id="selectTeamListInPage" resultType="cc.mrbird.febs.dapp.vo.TeamListVo">
- select
- concat(left(a.address,5), '******', right(a.address,5)) address,
- (select count(1) from dapp_member b where find_in_set(a.invite_id, b.fee_profit_ids)
- ) count,
- (select ifnull(sum(c.balance),0) from dapp_member c where find_in_set(a.invite_id, c.fee_profit_ids)
- ) coinCount,
- a.balance selfCoinCount
- from dapp_member a
- where a.referer_id=#{record.inviteId}
- </select>
-
<select id="selectMakerAddress" resultType="cc.mrbird.febs.dapp.entity.DappMemberEntity">
select * from dapp_member
where maker_type=1 and account_type='normal'
--
Gitblit v1.9.1