From 0cb03c23595c71e08d65412ab0544a7871e04e62 Mon Sep 17 00:00:00 2001 From: puhanshu <a9236326> Date: 星期三, 08 九月 2021 10:10:01 +0800 Subject: [PATCH] 活动列表增加用户签到记录列表 --- springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java | 29 ++++++++++++++++++----------- 1 files changed, 18 insertions(+), 11 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java index baaf378..db78ba4 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/UserApi.java @@ -1,17 +1,17 @@ package com.panzhihua.applets.api; +import static java.util.stream.Collectors.toList; + import java.util.ArrayList; import java.util.Comparator; import java.util.Date; import java.util.List; import java.util.Optional; -import java.util.TreeSet; import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; import javax.annotation.Resource; -import com.panzhihua.common.model.vos.community.ComActActEvaluateVO; import org.springframework.beans.BeanUtils; import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.util.ObjectUtils; @@ -36,6 +36,7 @@ import com.panzhihua.common.model.dtos.user.SysUserFeedbackDTO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.community.ComActActEvaluateVO; import com.panzhihua.common.model.vos.community.ComActActRegistVO; import com.panzhihua.common.model.vos.community.ComActActivityVO; import com.panzhihua.common.model.vos.community.ComActEasyPhotoVO; @@ -275,18 +276,24 @@ if (!ObjectUtils.isEmpty(comActActivityVOS)) { List<ComActActivityVO> collect = comActActivityVOS.stream() .sorted(Comparator.comparing(ComActActivityVO::getSingDate).reversed()).collect(Collectors.toList()); - //当前用户最近签到时间 + //当前用户签到记录列表 R r2 = communityService.listSignInActivity(userId); if (R.isOk(r2) && !ObjectUtils.isEmpty(r2.getData())) { - ArrayList<ComActActRegistVO> comActActRegistVOS = JSONArray.parseArray(JSONArray.toJSONString(r2.getData()), ComActActRegistVO.class).stream() - .sorted(Comparator.comparing(ComActActRegistVO::getCreateAt).reversed()) - .collect(Collectors.collectingAndThen(Collectors.toCollection(() -> - new TreeSet<>(Comparator.comparing(f -> String.join("", f.getUserId().toString(), f.getActivityId().toString())))), ArrayList::new)); - collect.forEach(comActActivityVO -> comActActRegistVOS.forEach(activitySignInVO -> { - if (comActActivityVO.getId().equals(activitySignInVO.getActivityId())) { - comActActivityVO.setActivitySignInDate(activitySignInVO.getCreateAt()); + List<ComActActRegistVO> comActActRegistVOS = JSONArray.parseArray(JSONArray.toJSONString(r2.getData()), ComActActRegistVO.class).stream() + .sorted(Comparator.comparing(ComActActRegistVO::getCreateAt).reversed()).collect(toList()); + collect.forEach(comActActivityVO -> { + ArrayList<ComActActRegistVO> currentList = new ArrayList<>(); + comActActRegistVOS.forEach(activitySignInVO -> { + if (comActActivityVO.getId().equals(activitySignInVO.getActivityId())) { + currentList.add(activitySignInVO); + } + }); + if (currentList.size() > 10) { + comActActivityVO.setActivitySignInList(currentList.subList(0, 10)); + } else { + comActActivityVO.setActivitySignInList(currentList); } - })); + }); } //当前用户活动评分 R r3 = communityService.listEvaluate(userId); -- Gitblit v1.7.1