Skip to content

Conversation

@joyewon0705
Copy link
Collaborator

@joyewon0705 joyewon0705 commented Oct 7, 2025

📌 개요

  • 게시글 카테고리(PostCategory) 관련 기능을 추가했습니다.
  • 엔티티 구조 수정, 초기 데이터 설정, 조회/생성 API 구현, Swagger 문서 및 테스트를 포함합니다.

🔨 작업 내용

1. 엔티티 수정

  • PostCategoryCategoryType(enum) 필드 추가
  • CategoryType: SUBJECT, DEMOGRAPHIC, GROUP_SIZE
  • 생성자 오버로드(name, name + type)

2. 초기 데이터 설정

  • data.sql을 통해 90여 개의 기본 카테고리 자동 등록
  • application-dev.yml에서 defer-datasource-initialization: true, sql.init.mode: always 설정

3. API 구현

  • 카테고리 전체 조회 (GET /api/posts/categories)

    • 모든 카테고리 반환
    • CategoryResponsetype 필드 포함
  • 카테고리 생성 (POST /api/posts/categories)

    • 로그인 사용자만 등록 가능
    • 중복 시 409 Conflict, 존재하지 않는 사용자 시 404 Not Found 처리

4. 예외 코드 추가

코드 상태 메시지
POST_003 404 존재하지 않는 카테고리입니다.
POST_004 409 이미 존재하는 카테고리입니다.

5. Swagger 문서

  • PostCategoryControllerDocs 인터페이스 작성
  • 요청/응답 예시 및 에러 코드 상세 기술

6. 테스트

  • Service 단위 테스트: 생성 성공/실패, 전체 조회
  • Controller 통합 테스트: JWT 인증 포함, 성공 및 예외 케이스 검증

🔗 관련 이슈

Closes #196

📝 참고 사항

  • PostCategorytype 필드 추가 -> 노션 ERD 페이지에 추가해두었습니다.
  • 개발 환경에서는 data.sql이 자동 실행되어 기본 카테고리가 등록됩니다.

✅ 체크리스트

  • 기능 동작 확인
  • 테스트 코드 작성
  • 문서/주석 추가 및 최신화

@github-actions github-actions bot changed the title Feat: 카테고리 데이터 및 조회/생성 API 구현 Feat: 카테고리 데이터 및 조회/생성 API 구현 (#196) Oct 7, 2025
@joyewon0705 joyewon0705 changed the base branch from Refactor/193 to dev October 7, 2025 06:07
@joyewon0705 joyewon0705 merged commit a4528bf into dev Oct 7, 2025
3 checks passed
@github-actions github-actions bot deleted the Feat/196 branch October 7, 2025 06:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants