-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: 모임 목록 조회 방식을 수정하고, 다양한 조건에 따라 모임 검색이 가능하는 기능 구현 #24
Conversation
- 기존의 단일 조건 대신 JPA Specification을 통해 다양한 조건을 동적으로 조회할 수 있도록 변경 - 참여 유저, 모임 주제, 검색, 모임 지역, 모임 종료 여부에 따라 모임들을 조회 - AOS의 요청에 따라 커서 방식이 아닌 페이지네이션 방식으로 변경 - 응답 객체 변경
- isOpen에 대한 or 연산자가 앞에 있어 닫힌 모임에도 불구하고 조회되었던 문제 수정
- WebTestClient가 WebFlux 기반의 라이브러리로 Pageable의 값을 Resolving 하는 리솔버가 작동하지 않아 커스텀 리솔버를 테스트 환경에 추가했습니다. - [ref](https://medium.com/@davidpetro/spring-webflux-and-pageable-be55104c234f)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
수고하셨습니다.
Slice<Meeting> meetings = meetingService.getMeetingsBySpecification(pageable, topic, meetingAreaStreet, participantUserId, searchWord, isOpen); | ||
|
||
return ResultCursor.create(meetings, meetings.getLast().id(), size); | ||
return PageDto.of(MeetingsResponse.of(meetings.getContent()), meetings.hasNext()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
반영하면 좋고 반영하지 않아도 괜찮음
Dto변환은 service레이어에서 했을때 더 자연스러운거 같아요. 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
PageDto
로 서비스 레이어에서 넘겨도 괜찮을까요?
hasNext
의 존재때문에 MeetingsResponse
로는 넘길수가 없어서요!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
앗 넵!
PageDto의 위치가 controller.request가 아닌 domain 하위라서 service에 두는게 좀 더 자연스러워 보여요~
src/test/java/net/teumteum/meeting/config/PageableHandlerMethodArgumentResolver.java
Show resolved
Hide resolved
} | ||
|
||
@Override | ||
public Mono<Object> resolveArgument(MethodParameter methodParameter, BindingContext bindingContext, ServerWebExchange serverWebExchange) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
WebTestClient 랑 MVC를 처음 붙여봐서 몰랐는데, 이런 어려움이 있네여 여기서 Mono 반환해야하는걸 보니 맞지 않는 옷을 입고있는 느낌이라. Restassured 로 가는게 맞지 않나.. 싶습니다. 이거 한번 논의해 봐야할거 같아요.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(당장 바꾸자는 아닙니다!)
고생했습니다!!! |
Quality Gate passedKudos, no new issues were introduced! 0 New issues |
🚀 어떤 기능을 개발했나요?
모임 목록 조회 기능 개발
🕶️ 어떻게 해결했나요?
🦀 이슈 넘버
close #18
(option) 어떤 부분에 집중하여 리뷰해야 할까요?