| | |
| | | package cc.mrbird.febs; |
| | | |
| | | import cc.mrbird.febs.dapp.entity.DappAchieveMemberTreeEntity; |
| | | import cc.mrbird.febs.dapp.entity.DappFundFlowEntity; |
| | | import cc.mrbird.febs.dapp.entity.DappMemberEntity; |
| | | import cc.mrbird.febs.dapp.mapper.DappAchieveMemberTreeDao; |
| | | import cc.mrbird.febs.dapp.mapper.DappFundFlowDao; |
| | | import cc.mrbird.febs.dapp.mapper.DappMemberDao; |
| | | import cc.mrbird.febs.dapp.service.DappSystemService; |
| | | import cc.mrbird.febs.dapp.vo.TeamListVo; |
| | | import cc.mrbird.febs.tree.MatrixTree; |
| | | import cc.mrbird.febs.tree.MemberNode; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import cn.hutool.core.util.RandomUtil; |
| | | import cn.hutool.json.JSONUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.boot.test.context.SpringBootTest; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author wzy |
| | |
| | | @Autowired |
| | | private DappAchieveMemberTreeDao dappAchieveMemberTreeDao; |
| | | |
| | | @Autowired |
| | | private DappMemberDao dappMemberDao; |
| | | |
| | | @Autowired |
| | | private DappFundFlowDao dappFundFlowDao; |
| | | |
| | | @Test |
| | | public void resetMatrixV3() { |
| | | Long memberId = 136L; |
| | | QueryWrapper<DappFundFlowEntity> objectQueryWrappers = new QueryWrapper<>(); |
| | | objectQueryWrappers.eq("member_id", memberId); |
| | | objectQueryWrappers.orderByDesc("create_time"); |
| | | List<DappFundFlowEntity> dappFundFlowEntitiess = dappFundFlowDao.selectList(objectQueryWrappers); |
| | | if(ObjectUtil.isNotEmpty(dappFundFlowEntitiess)){ |
| | | DappAchieveMemberTreeEntity topNode = dappAchieveMemberTreeDao.selectNodeByDeep(dappFundFlowEntitiess.get(0).getId(), 1); |
| | | if (ObjectUtil.isNotEmpty(topNode)) { |
| | | TeamListVo teamListVo = buildTeamMatrix(topNode); |
| | | System.out.println(JSONUtil.parseObj(teamListVo)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | @Test |
| | | public void resetMatrixV2() { |
| | | dappSystemService.achieveTreeV2(136L); |
| | | } |
| | | |
| | | @Test |
| | | public void resetMatrix() { |
| | | dappSystemService.achieveTree(Long.parseLong("134")); |
| | | // dappSystemService.resetMatrix(); |
| | | // dappAchieveMemberTreeDao.emptyTable(); |
| | | Long withoutId = 1L; |
| | | QueryWrapper<DappMemberEntity> objectQueryWrapper = new QueryWrapper<>(); |
| | | objectQueryWrapper.orderByAsc("create_time"); |
| | | List<DappMemberEntity> dappMemberEntities = dappMemberDao.selectList(objectQueryWrapper); |
| | | for(DappMemberEntity member : dappMemberEntities){ |
| | | System.out.println(member.getId()); |
| | | if(withoutId != member.getId()){ |
| | | DappFundFlowEntity fundFlow = new DappFundFlowEntity(member.getId(), new BigDecimal("1"), 1, 2, |
| | | BigDecimal.ZERO, "测试"); |
| | | dappFundFlowDao.insert(fundFlow); |
| | | dappSystemService.achieveTreeV2(fundFlow.getId()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | 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)); |
| | | } |
| | | teamListVo.setChildren(list); |
| | | return teamListVo; |
| | | } |
| | | |
| | | @Test |