From 8bf923b44bbe9b45b73ddcc25df75c9c59f54e07 Mon Sep 17 00:00:00 2001
From: Hentua <wangdoubleone@gmail.com>
Date: Thu, 15 Jun 2023 11:19:44 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java |   34 ++++++++++++++++++++++++++++++----
 1 files changed, 30 insertions(+), 4 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 58d2977..73f91e2 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
@@ -36,9 +36,7 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
-import java.util.ArrayList;
-import java.util.Date;
-import java.util.List;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -615,7 +613,7 @@
         member.setReferrerIds(refererIds);
         this.baseMapper.updateById(member);
 
-        List<MallMember> childs = this.baseMapper.selectByRefererId(member.getInviteId());
+        List<MallMember> childs = this.baseMapper.selectAllChildAgentListByInviteId(member.getInviteId());
         if (CollUtil.isEmpty(childs)) {
             return;
         }
@@ -812,4 +810,32 @@
     public List<ChargeListExportVo> findChargeListForExcel(MoneyChargeListDto moneyChargeListDto) {
         return this.mallMoneyFlowMapper.selectChargeListForExcel(moneyChargeListDto);
     }
+
+    @Override
+    public IPage<AdminTeamListVo> findTeamList(MallMember mallMember, QueryRequest request) {
+        Page<AdminTeamListVo> page = new Page<>(request.getPageNum(), request.getPageSize());
+        IPage<AdminTeamListVo> teamListInPage = this.mallMemberMapper.selectTeamListInPage(mallMember, page);
+        if (CollUtil.isEmpty(teamListInPage.getRecords())) {
+            return teamListInPage;
+        }
+
+        List<Long> memberIds = teamListInPage.getRecords().stream().map(AdminTeamListVo::getId).collect(Collectors.toList());
+        List<MallMoneyFlow> mallMoneyFlows = this.mallMoneyFlowMapper.selectMemberProfitByMemberIds(memberIds);
+        if (CollUtil.isNotEmpty(mallMoneyFlows)) {
+            Map<Long, MallMoneyFlow> map = new HashMap<>();
+            mallMoneyFlows.forEach(item -> {
+                map.put(item.getMemberId(), item);
+            });
+
+            teamListInPage.getRecords().forEach(item -> {
+                MallMoneyFlow mallMoneyFlow = map.get(item.getId());
+                if (mallMoneyFlow != null) {
+                    item.setTeamProfitAmount(mallMoneyFlow.getAmount());
+                }
+            });
+        }
+
+
+        return teamListInPage;
+    }
 }

--
Gitblit v1.9.1