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

SAPHY-123 feat: 기기 검색 기능 구현 #87

Merged
merged 17 commits into from
Oct 4, 2024

Conversation

holyPigeon
Copy link
Contributor

📄 Summary

  • 기기 필터링 검색 및 정렬 기능을 구현했습니다.

    • 기본적인 검색 기능(키워드로 제목, 내용 검색)을 구현했습니다.
    • 기기의 세부 정보(브랜드, 용량, 색상)에 따른 필터링 기능을 제공합니다.
    • 세부적인 검색 조건은 API 요청시 URL 상의 파라미터로 받아 처리합니다.
  • 이 외에 P6Spy를 통해 SQL 쿼리를 분석할 수 있도록 세팅해놨습니다.

  • application.yml 에서 다음 설정을 true로 하면 로그를 확인할 수 있습니다.

decorator:
  datasource:
    p6spy:
      enable-logging: false

🕰️ Actual Time of Completion

거의 2주;;

🙋🏻 More

  • 처음엔 Elasticsearch를 도입하려고 했는데, 진입장벽이 too much여서 포기했습니다.
  • 은찬이형한테 물어봤는데 많이 어렵다네요;;

@holyPigeon holyPigeon added the ✨ Feature 새로운 기능 label Oct 2, 2024
@holyPigeon holyPigeon self-assigned this Oct 2, 2024
Copy link
Member

@gyuseon25 gyuseon25 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 +32 to +48
public Slice<Item> findByDeviceTypeAndSortType(SearchParam searchParam, Pageable pageable) {
int pageSize = pageable.getPageSize();

JPAQuery<Item> basicQuery = queryFactory
.selectFrom(item)
.where(
titleContains(searchParam.getQuery()),
descriptionContains(searchParam.getQuery()),
deviceTypeEquals(searchParam.getDeviceType())
)
.offset(pageable.getOffset())
.limit(pageSize + 1);

List<Item> content = addSortingQuery(basicQuery, searchParam.getSort());

return new SliceImpl<>(content, pageable, hasNextPage(content, pageSize));
}
Copy link
Member

Choose a reason for hiding this comment

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

기존 page 대신 무한 스크롤 기능 때문에 Slice를 적용하셨군요!
공부해봐야겠습니다..

@holyPigeon holyPigeon merged commit 153be9d into develop Oct 4, 2024
1 check passed
@holyPigeon holyPigeon deleted the feat/SAPHY-123-기기-검색-기능-구현 branch October 4, 2024 08:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Feature 새로운 기능
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants