Skip to content
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

feature: 숙소 조회 시, 객실 최대 인원과 최대 page count를 응답에 포함해 보내는 API를 구현합니다. #104

Closed
wants to merge 378 commits into from

Conversation

wocjf0513
Copy link
Contributor

@wocjf0513 wocjf0513 commented Dec 10, 2023

Close #103 을 참고해주세요!

💡 Motivation

  • 숙소 조회 시!! 객실 최대 인원, 최대 Page Count를 이용하고자 해서 추가 응답으로 보내고자 합니다.
  • 또한, 숙소의 최소 객실 가격이 0원일 때, 100,000 기본 가겨으로 보낼 수 있게 조정하고자 합니다.

📌 Changes

  • 기존의 jpa specification으로 검색을 구현하던 api를 제거
  • jPQL을 통해서 fetch join을 통해 전체 조회에서 사용되는 데이터에 대해 가져옵니다. (address table, product table, room table)
  • jPQL을 통해 검색 키워드에 맞는 객실 최대 인원을 검색합니다.
  • repository 에서 page로 응답을 받고, 여기서 얻을 수 있는 최대 pageCount를 새로운 dto에 담아 프론트에게 전달합니다.
  • productMapper에서 0원인걸 100,000원으로 변경하는 api 수정

🫱🏻‍🫲🏻 To Reviewers

해당 기능을 숙소 조회에서
여러 명의 손님 팀이 숙박할 수 있는 객실이 있는 지 검색하는 용도로 사용될 거 같습니다.

또한, 최대 PageCount는 더 이상 Page가 없음을 프론트에서 알기 위해 필요한 정보라 합니다.!! 화이팅 

JeongUijeong and others added 30 commits November 26, 2023 14:33
feat: 상품 전체 조회 및 상세 조회 기능 구현
- 총 예약 인원 'totalPeople', 방문 시작일 'startDate', 방문 마지막일 'endDate' 필드 추가
@wocjf0513 wocjf0513 self-assigned this Dec 10, 2023
@wocjf0513 wocjf0513 added 🛠️feature 기능 개발 ✅Test test 관련 labels Dec 10, 2023
Copy link

github-actions bot commented Dec 10, 2023

Test Results

82 tests  +1   82 ✔️ +1   4s ⏱️ ±0s
47 suites +1     0 💤 ±0 
47 files   +1     0 ±0 

Results for commit 8e5f4f5. ± Comparison against base commit 6fe9b91.

♻️ This comment has been updated with latest results.

Copy link
Contributor

@JeongUijeong JeongUijeong left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

수고 많으셨습니당~! 🐻 몇 가지 코멘트 남겨뒀으니 확인 후 수정 부탁드려요!!
QueryDSL 같은 경우는 추후 수정하셔도 되니 어떻게 하실 것인지 결정하신 후 답변 달아주세요~~

Comment on lines 18 to 24
@Query(value = "SELECT p FROM Product as p "
+ "JOIN FETCH p.rooms as r "
+ "JOIN FETCH p.address as addr "
+ "WHERE p.name LIKE %:#{#searchKeywordRequest.productName}% "
+ "AND addr.detailAddress LIKE %:#{#searchKeywordRequest.address}% "
+ "AND p.category in :#{#searchKeywordRequest.category} "
+ "AND r.capacity >= :#{#searchKeywordRequest.capacity}")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

QueryDSL을 통해 Java 문법으로 쿼리를 날릴 수 있습니다! 마침 저희 프로젝트에서도 사용하도록 설정되어 있으니, 사용해보시는 게 좋을 것 같습니다~~

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

설정도 되있으니 QueryDSL 사용해서 하겠습니다!

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

secret 값들이 모두 올라가 있습니다..! 해당 커밋 남지 않도록 수정해주세요!!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

오호...저게 왜 올라갔지 수정하겠습니다.

@wocjf0513 wocjf0513 closed this Dec 11, 2023
@wocjf0513 wocjf0513 force-pushed the feature/product-capacity-search branch from 8e5f4f5 to b849287 Compare December 11, 2023 06:30
@wocjf0513 wocjf0513 deleted the feature/product-capacity-search branch December 11, 2023 06:43
@wocjf0513 wocjf0513 restored the feature/product-capacity-search branch December 11, 2023 06:43
@wocjf0513 wocjf0513 deleted the feature/product-capacity-search branch December 11, 2023 16:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🛠️feature 기능 개발 ✅Test test 관련
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants