Skip to content

feat: add seasonal suggested keyword lookup endpoint#198

Open
hyunbin1 wants to merge 3 commits intomainfrom
codex/add-api-for-popular-search-keywords
Open

feat: add seasonal suggested keyword lookup endpoint#198
hyunbin1 wants to merge 3 commits intomainfrom
codex/add-api-for-popular-search-keywords

Conversation

@hyunbin1
Copy link
Member

Motivation

  • Provide a simple API for the frontend to fetch 5 fixed seasonal recommendation keywords per period and fall back to realtime popular keywords during non-operational months (May, November).
  • Make seasonal logic configurable by month so the frontend can request for a specific month or use the current month by default.

Description

  • Added PopularSearchKeyword JPA entity with fields id, period (enum SeasonalPeriod), keyword, and displayOrder to store seasonal keywords.
  • Added PopularSearchKeywordRepository with findTop5ByPeriodOrderByDisplayOrderAscIdAsc to fetch up to 5 keywords in display order.
  • Implemented SeasonalSuggestService that resolves a month into seasonal buckets, validates month range, returns DB-based keywords for periods (개강/시험/종강/방학) and returns realtime top-5 via RealtimeKeywordService for off months (5, 11).
  • Added SeasonalSuggestionResponse DTO and extended SuggestController with GET /api/v1/search/suggest/seasonal which accepts an optional month query parameter and returns { period, keywords }.

Testing

  • Ran ./gradlew test --no-daemon but the build failed in this environment with a Java/Gradle compatibility error (Unsupported class file major version 69), so automated tests could not be executed here.

Codex Task

@chatgpt-codex-connector
Copy link

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, you can upgrade your account or add credits to your account and enable them for code reviews in your settings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant