From bfa4d0fc1ce8d297fb2bea1c467ec335def8fa89 Mon Sep 17 00:00:00 2001 From: Hentua <wangdoubleone@gmail.com> Date: Thu, 15 Jun 2023 01:26:41 +0800 Subject: [PATCH] 团队业绩 --- src/main/java/cc/mrbird/febs/mall/service/impl/AdminMallMemberServiceImpl.java | 32 +++++++++++++++++++++++++++++--- 1 files changed, 29 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 fb9fc50..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; /** @@ -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