From d497710f15f38a293fbab685160a113923f7811b Mon Sep 17 00:00:00 2001 From: KKSU <15274802129@163.com> Date: Wed, 12 Mar 2025 11:30:09 +0800 Subject: [PATCH] refactor(mall): 优化直推人数统计逻辑 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 12 +++++++++--- 1 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java index 5a38e8e..e2a4d4a 100644 --- a/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java @@ -92,15 +92,21 @@ DateTime endTime = DateUtil.date(); records.forEach(item -> { CompletableFuture<Void> uCompletableFuture = CompletableFuture.runAsync(() -> { - //获取直推 - Set<String> directInviteIds = mallMemberMapper.selectList( + List<MallMember> directMembers = mallMemberMapper.selectList( new LambdaQueryWrapper<MallMember>() .eq(MallMember::getReferrerId, item.getInviteId()) - ).stream() + ); + //获取直推 + Set<String> directInviteIds = directMembers.stream() + .map(MallMember::getInviteId) + .collect(Collectors.toSet()); + Set<String> directCntAvailableInviteIds = directMembers.stream() + .filter(member -> !"YOUKE".equals(member.getLevel())) .map(MallMember::getInviteId) .collect(Collectors.toSet()); if(CollUtil.isNotEmpty(directInviteIds)){ item.setDirectCnt(directInviteIds.size()); + item.setDirectCntAvailable(directCntAvailableInviteIds.size()); //获取团队 List<MallMember> allMembers = mallMemberMapper.selectList( new LambdaQueryWrapper<MallMember>() -- Gitblit v1.9.1