|
@@ -663,38 +663,24 @@ public class UserStudyRecordServiceImpl extends ServiceImpl<UserStudyRecordMappe
|
|
|
//开通课程和未开通课程人数
|
|
|
Map<Integer, List<UserStudyRecord>> buyMap = recordList.stream().filter(x -> ObjectUtils.isNotNull(x.getBuyCourse())).collect(Collectors.groupingBy(UserStudyRecord::getBuyCourse));
|
|
|
if (CollectionUtils.isNotEmpty(buyMap)){
|
|
|
- buyMap.forEach((k,v) -> {
|
|
|
- switch (k){
|
|
|
- case 0://未开通课程
|
|
|
- Map<Long, List<UserStudyRecord>> collect = buyMap.get(k).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
- item.setUnBuyCourseNumber(collect.keySet().size());
|
|
|
- break;
|
|
|
- case 1://开通课程
|
|
|
- Map<Long, List<UserStudyRecord>> records = buyMap.get(k).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
- item.setBuyCourseNumber(records.keySet().size());
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
- });
|
|
|
+ //开通课程
|
|
|
+ Map<Long, List<UserStudyRecord>> records = buyMap.get(1).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
+ Set<Long> buyCourseUserIds = records.keySet();
|
|
|
+ item.setBuyCourseNumber(buyCourseUserIds.size());
|
|
|
+ //未开通课程
|
|
|
+ Map<Long, List<UserStudyRecord>> collect = buyMap.get(0).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
+ List<Long> unBuyCourseUserIds = collect.keySet().stream().filter(x -> !buyCourseUserIds.contains(x)).collect(Collectors.toList());
|
|
|
+ item.setUnBuyCourseNumber(CollectionUtils.isNotEmpty(unBuyCourseUserIds)?unBuyCourseUserIds.size():0);
|
|
|
+
|
|
|
}
|
|
|
Map<String, List<UserStudyRecord>> collect = recordList.stream().filter(x -> ObjectUtils.isNotNull(x.getFromPlat())).collect(Collectors.groupingBy(UserStudyRecord::getFromPlat));
|
|
|
if (CollectionUtils.isNotEmpty(collect)) {
|
|
|
- collect.forEach((k, v) -> {
|
|
|
- switch (k){
|
|
|
- case "1"://小程序
|
|
|
- Map<Long, List<UserStudyRecord>> rListMap = collect.get(k).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
- item.setAppWatchNumber(rListMap.keySet().size());
|
|
|
- break;
|
|
|
- case "2"://PC
|
|
|
-// collect.get(k).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId))
|
|
|
- Map<Long, List<UserStudyRecord>> records = collect.get(k).stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
- item.setAdminWatchNumber(records.keySet().size());
|
|
|
- break;
|
|
|
- default:
|
|
|
- break;
|
|
|
- }
|
|
|
- });
|
|
|
+ //小程序
|
|
|
+ Map<Long, List<UserStudyRecord>> rListMap = collect.get("1").stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
+ item.setAppWatchNumber(rListMap.keySet().size());
|
|
|
+ //PC
|
|
|
+ Map<Long, List<UserStudyRecord>> records = collect.get("2").stream().filter(x -> ObjectUtils.isNotNull(x.getUserId())).collect(Collectors.groupingBy(UserStudyRecord::getUserId));
|
|
|
+ item.setAdminWatchNumber(records.keySet().size());
|
|
|
}
|
|
|
}
|
|
|
});
|