Skip to content

feat: enchant fullname api 접두접미 요청 파라미터 추가#105

Merged
dev-ant merged 2 commits into
devfrom
feat/enchant-fullname-api-params
Feb 23, 2026
Merged

feat: enchant fullname api 접두접미 요청 파라미터 추가#105
dev-ant merged 2 commits into
devfrom
feat/enchant-fullname-api-params

Conversation

@dev-ant

@dev-ant dev-ant commented Feb 23, 2026

Copy link
Copy Markdown
Contributor

📋 상세 설명

  • 인챈트 정보 조회 시 한번에 너무 많은 정보가 응답가는 것을 막기 위해 접두 접미 위치 (affix_position) 요청 파라미터 추가
    • String, required=false, affix_position이 null인 경우 예외가 아닌 모든 인챈트 정보를 반환함
    • 다만, 웹 프론트엔드에서는 가급적 affix_position을 사용하여 api를 호출할 예정

📊 체크리스트

  • PR 제목이 형식에 맞나요 e.g. feat: PR을 등록한다
  • 코드가 테스트 되었나요
  • 문서는 업데이트 되었나요
  • 불필요한 코드를 제거했나요
  • 이슈와 라벨이 등록되었나요

@dev-ant dev-ant requested a review from Copilot February 23, 2026 12:53
@dev-ant dev-ant self-assigned this Feb 23, 2026
@dev-ant dev-ant added the ✨feature 새로운 기능 추가 label Feb 23, 2026
@github-actions

github-actions Bot commented Feb 23, 2026

Copy link
Copy Markdown

✅ 테스트 결과 for PR

Build: success

🧪 테스트 실행 with Gradle
📈 Coverage: -0.00%

📁 테스트 결과
📁 커버리지 보고서 (HTML)

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

This PR enhances the enchant information API and adds enchant search functionality to auction queries. The main purpose is to prevent returning excessive data by adding an optional affix_position filter parameter to the enchant fullname endpoint, and to enable searching for items by their enchant prefix/suffix values in both auction history and real-time auction queries.

Changes:

  • Added optional affix_position parameter to the enchant fullname API endpoint to filter by prefix (접두) or suffix (접미)
  • Introduced EnchantSearchRequest DTO to support enchant-based filtering in auction searches
  • Implemented QueryDSL-based enchant search logic for both auction history and real-time auction queries

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
EnchantInfoController.java Added affix_position request parameter to getAllEnchantFullnames endpoint with OpenAPI documentation
EnchantInfoService.java Added validation logic for affix_position parameter and routing to appropriate repository method
EnchantInfoRepositoryPort.java Added new interface method for filtering by affix position
EnchantInfoRepositoryPortImpl.java Implemented the new repository method
EnchantInfoJpaRepository.java Added JPQL query to filter enchants by affix position
EnchantInfoExceptionCode.java New exception code enum for invalid affix_position values
EnchantSearchRequest.java New DTO for enchant search criteria with prefix and suffix fields
AuctionHistorySearchRequest.java Added enchantSearchRequest field to support enchant filtering
AuctionRealtimeSearchRequest.java Added enchantSearchRequest field to support enchant filtering
AuctionHistoryQueryDslRepository.java Implemented QueryDSL logic to filter by enchant prefix/suffix using subqueries
AuctionRealtimeQueryDslRepository.java Implemented QueryDSL logic to filter by enchant prefix/suffix using subqueries

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


public List<String> findAllFullnames() {
public List<String> findAllFullnames(String affixPosition) {
if (affixPosition != null) {

Copilot AI Feb 23, 2026

Copy link

Choose a reason for hiding this comment

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

The validation should also check for blank strings. Following the codebase convention seen in AuctionHistoryQueryDslRepository and AuctionRealtimeQueryDslRepository, string parameters should be validated with both null and isBlank() checks. A blank string (e.g., empty or whitespace-only) should be treated the same as null and return all enchants rather than throwing an exception.

Suggested change
if (affixPosition != null) {
if (affixPosition != null && !affixPosition.isBlank()) {

Copilot uses AI. Check for mistakes.
@codecov

codecov Bot commented Feb 23, 2026

Copy link
Copy Markdown

@dev-ant dev-ant merged commit 3c75d51 into dev Feb 23, 2026
1 of 2 checks passed
@dev-ant dev-ant deleted the feat/enchant-fullname-api-params branch February 23, 2026 13:20
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