Closed sieunnnn closed 4 months ago
걷기 게시글의 다른 부분은 완성했지만 @codesooo 님과 기능이 겹치는 부분이 있어, 제가 작성한 부분을 @codesooo 님이 알맞게 수정해주셔야 합니다. 따라서 대략적인 Controller 와 Service 틀 까지만 만들어두었습니다.
isFinished
를 false 로 변경 해주어야 합니다.@codesooo List 형태의 값을 반환해야 할 때 사용합니다.
...
public Page<ColumnPostResponse> getColums(Pageable pageable) {
QPosts qPosts = QPosts.posts;
List<Posts> posts = queryFactory
.selectFrom(qPosts)
.where(qPosts.postType.eq(PostType.COLUMN)
.and(qPosts.isDeleted.isFalse()))
.fetch();
List<ColumnPostResponse> columnPostResponses = posts.stream()
.map(post -> {
User user = findUserById(post.getUser().getId());
String profileImageUrl = "";
if (!user.getProfile().getProfileImageUrl().isEmpty()) {
profileImageUrl = user.getProfile().getProfileImageUrl();
}
return new ColumnPostResponse(
post.getId(),
user.getId(),
user.getNickname(),
profileImageUrl,
user.getNumberTag(),
post.getTitle(),
post.getContent()
);
})
.toList();
return PaginationUtil.listToPage(columnPostResponses, pageable);
}
...
컨트롤러에서는 따로 구현할 필요없이 아래와 같이 반환값만 맞춰주심 됩니다.
...
@GetMapping("/columns")
public Page<ColumnPostResponse> getColumns(Pageable pageable) {
return columnPostQueryService.getColums(pageable);
}
...
궁금한 점이 있다면 언제든 문의주세요.
TODO
게시글
걷기 게시글
칼럼 게시글
댓글