diff --git a/src/main/java/com/lesso/neverland/group/application/GroupService.java b/src/main/java/com/lesso/neverland/group/application/GroupService.java index ca3ae7c..b4e27d8 100644 --- a/src/main/java/com/lesso/neverland/group/application/GroupService.java +++ b/src/main/java/com/lesso/neverland/group/application/GroupService.java @@ -88,10 +88,9 @@ private String calculateRecentUpdate(Team group) { // 그룹 프로필 조회 public BaseResponse getGroupProfile(Long groupIdx) { Team group = groupRepository.findById(groupIdx).orElseThrow(() -> new BaseException(INVALID_GROUP_IDX)); - List memberImageList = group.getUserTeams().stream() - .map(userTeam -> userTeam.getUser().getProfile().getProfileImage()) - .limit(3) - .toList(); +// List memberImageList = group.getUserTeams().stream() +// .map(userTeam -> userTeam.getUser().getProfile().getProfileImage()) +// .limit(3).toList(); Integer puzzleCount = puzzleRepository.countByTeam(group); @@ -101,11 +100,23 @@ public BaseResponse getGroupProfile(Long groupIdx) { long dayCount = ChronoUnit.DAYS.between(startLocalDate, today); - GroupProfileResponse profile = new GroupProfileResponse(group.getName(), group.getAdmin().getProfile().getNickname(), group.getStartDate().getYear(), memberImageList, + GroupProfileResponse profile = new GroupProfileResponse(group.getName(), group.getAdmin().getProfile().getNickname(), group.getStartDate().getYear(), getMemberImageList(group), group.getUserTeams().size(), puzzleCount, dayCount); return new BaseResponse<>(profile); } + private List getMemberImageList(Team group) { + List imageList = new ArrayList<>(); + imageList.add(group.getAdmin().getProfile().getProfileImage()); + + List memberImages = group.getUserTeams().stream() + .filter(userTeam -> "active".equals(userTeam.getStatus())) + .map(userTeam -> userTeam.getUser().getProfile().getProfileImage()) + .limit(2).toList(); + imageList.addAll(memberImages); + return imageList; + } + // [관리자] 그룹 수정 화면 조회 public BaseResponse getGroupEditView(Long groupIdx) { @@ -188,8 +199,8 @@ public BaseResponse withdrawGroup(Long groupIdx) { UserTeam userTeam = validateMember(user, group); userTeam.delete(); - userTeam.removeTeam(group); - userTeam.removeUser(user); + //userTeam.removeTeam(group); + //userTeam.removeUser(user); userTeamRepository.save(userTeam); return new BaseResponse<>(SUCCESS);