From 83bb6e0580b646c5d89da1cdb4085787c8136822 Mon Sep 17 00:00:00 2001 From: yujian <yujian@163.com> Date: 星期四, 23 四月 2020 14:29:48 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/div' into div --- fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/TeamUserLevelStatisticServiceImpl.java | 47 +++++++++++++++++++++++++++++++++++++---------- 1 files changed, 37 insertions(+), 10 deletions(-) diff --git a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/TeamUserLevelStatisticServiceImpl.java b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/TeamUserLevelStatisticServiceImpl.java index 1012708..3feab83 100644 --- a/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/TeamUserLevelStatisticServiceImpl.java +++ b/fanli/src/main/java/com/yeshi/fanli/service/impl/user/vip/TeamUserLevelStatisticServiceImpl.java @@ -1,7 +1,10 @@ package com.yeshi.fanli.service.impl.user.vip; +import java.util.ArrayList; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; import javax.annotation.Resource; @@ -23,10 +26,9 @@ @Resource private TeamUserLevelStatisticMapper teamUserLevelStatisticMapper; - + @Resource private UserInviteValidRecordService userInviteValidRecordService; - @Override public TeamUserLevelStatistic selectByUid(Long uid) { @@ -34,25 +36,51 @@ } @Override + public List<TeamUserLevelStatistic> listByUids(List<Long> uids) { + + List<TeamUserLevelStatistic> resultList = new ArrayList<>(); + + List<TeamUserLevelStatistic> list = teamUserLevelStatisticMapper.listByUids(uids); + // 鏀惧叆Map涓� + Map<Long, TeamUserLevelStatistic> map = new HashMap<>(); + if (list != null) + for (TeamUserLevelStatistic s : list) { + map.put(s.getId(), s); + } + + for (Long uid : uids) { + if (map.get(uid) == null) { + initData(uid); + TeamUserLevelStatistic statistic = selectByUid(uid); + resultList.add(statistic); + } else { + resultList.add(map.get(uid)); + } + } + + return null; + } + + @Override public void initData(Long uid) { int pageSize = 1000; - + // 鐩存帴绮変笣缁熻 int daRenFirstCount = 0; int highFirstCount = 0; int superFirstCount = 0; int tearcherFirstCount = 0; - for (int i = 0; i < 100; i ++) { + for (int i = 0; i < 100; i++) { List<UserInviteValidRecord> list = userInviteValidRecordService.listFirstTeam(i * pageSize, pageSize, uid); if (list == null || list.size() == 0) { break; } - + for (UserInviteValidRecord ts : list) { UserLevelEnum level = userLevelManager.getUserLevel(ts.getWorkerId()); if (level == UserLevelEnum.daRen) { daRenFirstCount++; - } else if (level == UserLevelEnum.highVIP) { + } else if (level == UserLevelEnum.highVIP) { highFirstCount++; } else if (level == UserLevelEnum.superVIP) { superFirstCount++; @@ -61,19 +89,18 @@ } } } - - + // 闂存帴绮変笣缁熻 int daRenSecondCount = 0; int highSecondCount = 0; int superSecondCount = 0; int tearcherSecondCount = 0; - for (int i = 0; i < 100; i ++) { + for (int i = 0; i < 100; i++) { List<UserInviteValidRecord> list = userInviteValidRecordService.listSecondTeam(i * pageSize, pageSize, uid); if (list == null || list.size() == 0) { break; } - + for (UserInviteValidRecord ts : list) { UserLevelEnum level = userLevelManager.getUserLevel(ts.getWorkerId()); if (level == UserLevelEnum.daRen) { -- Gitblit v1.8.0