Skip to content

Commit e4dac7c

Browse files
authored
Dev > Main 브랜치 병합
1. 프로젝트 상세 조회 Response에 지원자, 참여자 아이디가 보이는지 테스트 후 Main 브랜치에 병합합니다.
2 parents ff1395d + b430f29 commit e4dac7c

File tree

2 files changed

+24
-4
lines changed

2 files changed

+24
-4
lines changed

src/main/java/hs/kr/backend/devpals/domain/project/dto/ProjectAllDto.java

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,17 @@ public class ProjectAllDto {
8080
@Schema(description = "스킬 태그 정보", accessMode = Schema.AccessMode.READ_ONLY)
8181
private List<SkillTagResponse> skills;
8282

83+
@JsonProperty(access = JsonProperty.Access.READ_ONLY)
84+
@Schema(description = "지원자 ID 목록", example = "[2, 3]", accessMode = Schema.AccessMode.READ_ONLY)
85+
private List<Long> applicantIds;
86+
87+
@JsonProperty(access = JsonProperty.Access.READ_ONLY)
88+
@Schema(description = "참여자(수락된 지원자) ID 목록", example = "[2]", accessMode = Schema.AccessMode.READ_ONLY)
89+
private List<Long> acceptedIds;
90+
8391
public static ProjectAllDto fromEntity(ProjectEntity project, List<PositionTagResponse> positions,
84-
List<SkillTagResponse> skills, MethodTypeResponse methodType, ProjectUserResponse user) {
92+
List<SkillTagResponse> skills, MethodTypeResponse methodType, ProjectUserResponse user,
93+
List<Long> applicantIds, List<Long> acceptedIds) {
8594
return ProjectAllDto.builder()
8695
.id(project.getId())
8796
.title(project.getTitle())
@@ -101,6 +110,8 @@ public static ProjectAllDto fromEntity(ProjectEntity project, List<PositionTagRe
101110
.methodType(methodType)
102111
.positions(positions)
103112
.skills(skills)
113+
.applicantIds(applicantIds)
114+
.acceptedIds(acceptedIds)
104115
.build();
105116
}
106117
}

src/main/java/hs/kr/backend/devpals/domain/project/service/ProjectService.java

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ public ResponseEntity<ApiResponse<ProjectAllDto>> updateProject(Long projectId,
117117
ProjectAllDto updatedProject = convertToDto(project);
118118
projectAllCache.put(projectId, updatedProject);
119119

120-
return ResponseEntity.ok(new ApiResponse<>(true, "프로젝트 업데이트 완료", updatedProject));
120+
return ResponseEntity.ok(new ApiResponse<>(true, "프로젝트 업데이트 완료", null));
121121
}
122122

123123
// 프로젝트 등록
@@ -131,7 +131,7 @@ public ResponseEntity<ApiResponse<ProjectAllDto>> projectSignup(ProjectAllDto re
131131
ProjectAllDto responseDto = convertToDto(savedProject);
132132
projectAllCache.put(savedProject.getId(), responseDto);
133133

134-
return ResponseEntity.ok(new ApiResponse<>(true, "프로젝트 등록 완료", responseDto));
134+
return ResponseEntity.ok(new ApiResponse<>(true, "프로젝트 등록 완료", null));
135135
}
136136

137137
// 특정 프로젝트 조회
@@ -235,14 +235,23 @@ private ProjectAllDto convertToDto(ProjectEntity project) {
235235
List<SkillTagResponse> skillResponses = userFacade.getSkillTagResponses(project.getSkillTagIds());
236236
List<PositionTagResponse> positionResponses = userFacade.getPositionTagResponses(project.getPositionTagIds());
237237
MethodTypeResponse methodTypeResponse = projectFacade.getMethodTypeResponse(project.getMethodTypeId());
238+
List<ApplicantEntity> applicants = applicantRepository.findByProject(project);
239+
240+
List<Long> applicantIds = applicants.stream()
241+
.map(applicant -> applicant.getUser().getId())
242+
.toList();
238243

244+
List<Long> acceptedIds = applicants.stream()
245+
.filter(ApplicantEntity::isAccepted)
246+
.map(applicant -> applicant.getUser().getId())
247+
.toList();
239248

240249
UserEntity userEntity = userRepository.findById(project.getUserId())
241250
.orElseThrow(() -> new CustomException(ErrorException.USER_NOT_FOUND));
242251

243252
ProjectUserResponse user = ProjectUserResponse.fromEntity(userEntity);
244253

245-
return ProjectAllDto.fromEntity(project, positionResponses, skillResponses, methodTypeResponse, user);
254+
return ProjectAllDto.fromEntity(project, positionResponses, skillResponses, methodTypeResponse, user, applicantIds, acceptedIds);
246255
}
247256

248257
}

0 commit comments

Comments
 (0)