diff --git a/src/main/java/clap/server/application/mapper/response/TeamTaskResponseMapper.java b/src/main/java/clap/server/application/mapper/response/TeamTaskResponseMapper.java index 05aa2ffc..63a3cebe 100644 --- a/src/main/java/clap/server/application/mapper/response/TeamTaskResponseMapper.java +++ b/src/main/java/clap/server/application/mapper/response/TeamTaskResponseMapper.java @@ -3,6 +3,7 @@ import clap.server.adapter.inbound.web.dto.task.response.TeamStatusResponse; import clap.server.adapter.inbound.web.dto.task.response.TeamTaskItemResponse; import clap.server.adapter.inbound.web.dto.task.response.TeamTaskResponse; +import clap.server.adapter.outbound.persistense.entity.task.constant.TaskStatus; import clap.server.domain.model.task.Task; import java.util.LinkedHashMap; @@ -10,6 +11,9 @@ import java.util.Map; import java.util.stream.Collectors; +import static clap.server.adapter.outbound.persistense.entity.task.constant.TaskStatus.IN_PROGRESS; +import static clap.server.adapter.outbound.persistense.entity.task.constant.TaskStatus.IN_REVIEWING; + public class TeamTaskResponseMapper { public static List toTeamTaskResponses(List tasks) { @@ -26,16 +30,16 @@ private static TeamTaskResponse toTeamTaskResponse(Map.Entry> e .collect(Collectors.toList()); Task firstTask = entry.getValue().get(0); - int inProgressTaskCount = firstTask.getProcessor().getInProgressTaskCount(); - int inReviewingTaskCount = firstTask.getProcessor().getInReviewingTaskCount(); + LinkedHashMap> collect = taskResponses.stream() + .collect(Collectors.groupingBy(TeamTaskItemResponse::taskStatus, LinkedHashMap::new, Collectors.toList())); return new TeamTaskResponse( entry.getKey(), firstTask.getProcessor().getNickname(), firstTask.getProcessor().getImageUrl(), firstTask.getProcessor().getDepartment().getName(), - inProgressTaskCount, - inReviewingTaskCount, + collect.get(IN_PROGRESS) != null ? collect.get(IN_PROGRESS).size() : 0, + collect.get(IN_REVIEWING) != null ? collect.get(IN_REVIEWING).size() : 0, entry.getValue().size(), taskResponses );