Skip to content

Conversation

@duthd3
Copy link
Contributor

@duthd3 duthd3 commented Nov 8, 2025

📌 이슈

✅ 작업 사항

  • 아이템 필터 적용
  • 아이템 필터 수정(해적 관련 제거, 귀장식, 전신 항목 제거(각각 귀고리, 전신갑옷과 동일 하다고 판단)
  • 훈장데이터는 서버에서 받아오지는 않는데 일단 살려둠

@duthd3 duthd3 self-assigned this Nov 8, 2025
@duthd3 duthd3 added the feat 새로운 기능을 추가 label Nov 8, 2025
@duthd3 duthd3 linked an issue Nov 8, 2025 that may be closed by this pull request
@gemini-code-assist
Copy link

Summary of Changes

Hello @duthd3, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

이 PR은 아이템 목록에 대한 필터링 기능을 전면적으로 도입하고 기존 필터 옵션을 개선합니다. 사용자 인터페이스에서 선택된 필터 기준을 백엔드 API 요청에 적합한 형태로 변환하는 새로운 유스케이스를 추가하고, 관련 데이터 모델 및 API 호출 로직을 업데이트하여 아이템 필터링의 유연성과 정확성을 높였습니다. 이를 통해 사용자는 더욱 세분화된 조건으로 아이템을 검색하고 탐색할 수 있게 됩니다.

Highlights

  • 아이템 필터 기능 구현: 아이템 목록에 필터 기능을 적용하기 위한 엔드포인트, 리포지토리, 유스케이스 및 UI 로직이 추가 및 수정되었습니다.
  • 필터 옵션 개선: 아이템 필터 바텀시트에서 직업, 발사체, 방어구, 장신구, 주문서 등 여러 카테고리의 필터 옵션이 수정되었습니다. 특히, '해적' 관련 직업, '불릿' 발사체, '전신' 방어구, '귀장식' 장신구 항목이 제거되거나 명확화되었습니다.
  • 필터 결과 파싱 로직 추가: ParseItemFilterResultUseCase 및 ParseItemFilterResultUseCaseImpl이 새로 추가되어 아이템 필터 바텀시트에서 선택된 결과를 실제 API 요청에 필요한 ItemFilterCriteria 객체로 변환하는 로직을 담당합니다.
  • API 요청 파라미터 유연성 강화: DictionaryListEndPoint 및 관련 리포지토리에서 아이템 목록 조회 시 jobId와 categoryIds 파라미터가 단일 Int에서 [Int] 배열로 변경되었고, 이를 콤마로 구분된 문자열로 변환하여 전송하도록 수정되었습니다.
  • UI/UX 개선: BaseListView에 정렬 및 필터 버튼의 UI 상태를 업데이트하는 selectSort 및 selectFilter 메서드가 추가되었으며, DictionaryListViewController에서 아이템이 없을 때 필터 버튼이 비활성화되지 않도록 수정되었습니다.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

아이템 필터 기능 구현을 위한 변경 사항들을 잘 확인했습니다. 전반적으로 API 변경에 맞춰 도메인과 프레젠테이션 레이어의 코드들이 일관성 있게 수정되었습니다. 특히 아이템 필터 선택 결과를 파싱하는 ParseItemFilterResultUseCaseImpl가 추가되어 로직이 잘 분리된 점이 좋습니다.

다만, 몇 가지 수정이 필요한 부분이 보입니다.

  • AppDelegate에서 의존성 주입 코드가 잘못된 위치로 이동하여 컴파일 오류가 발생할 수 있습니다.
  • ItemFilterBottomSheetReactor의 상태 값에 중복된 데이터가 있고, 사용되지 않는 헬퍼 함수가 추가되었습니다.
  • DictionaryListFactoryImplAppDelegate에서 ParseItemFilterResultUseCase 의존성 주입 시 파라미터 이름에 오타가 있습니다.

자세한 내용은 각 파일에 남긴 리뷰 코멘트를 참고해주세요.

@duthd3 duthd3 force-pushed the feat/#266-ItemFilter branch from e2ec9ac to 412ff25 Compare November 9, 2025 13:53
Copy link
Contributor

@pinocchio22 pinocchio22 left a comment

Choose a reason for hiding this comment

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

고생하셨습니다! 코드적으로는 구조 개선이 가능할 것 같은데 리팩토링시 진행해도 될 것같아서 따로 기록만 해두었습니다. 추가적으로 제가 발견한 이슈 네가지 기록하겠습니다.

  1. 주문서 필터를 바꿔서 적용하면 하단에 필터 태그?가 깨지고 크래시가 납니다 ex) 무기 주문서 클릭 -> 무기 주문서 중 택1 클릭 -> 방어구 주문서 클릭 -> 방어구 주문서 중 택1 클릭 -> 적용 -> 앱 크래시
  2. 버튼에 필터 적용된 아이템 개수가 여전히 n으로 표기되고있습니다
  3. 필터를 적용한 후 다시 필터를 누르면 기존에 선택했던 필터 정보가 초기화됩니다
  4. 초기화버튼을 눌러도 리스트의 필터버튼 컬러가 여전히 p700으로 나타납니다

@duthd3 duthd3 force-pushed the feat/#266-ItemFilter branch 5 times, most recently from 1741d8b to 65f5320 Compare November 12, 2025 12:42
@duthd3 duthd3 force-pushed the feat/#266-ItemFilter branch from b5bce27 to b88ddcb Compare November 12, 2025 15:16
@duthd3 duthd3 merged commit 3b5f77e into dev Nov 12, 2025
@duthd3 duthd3 deleted the feat/#266-ItemFilter branch November 13, 2025 14:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feat 새로운 기능을 추가

Projects

None yet

Development

Successfully merging this pull request may close these issues.

아이템 필터 적용

3 participants