feat: 배너 목록 API 구현 (#80) #81

Merged
seonkyu.kim merged 1 commits from feature/#80-banner-api into develop 2026-02-10 04:43:09 +00:00
Owner

📋 작업 요약

  • 배너 목록 API (POST /v1/in/public/banner/list) 구현
  • position별 필터링, sort_order 정렬 지원

Closes #80

🛠️ 작업 내용 (Changes)

  • SPMS.Application/DTOs/Banner/ — BannerListRequestDto, BannerListResponseDto, BannerItemDto
  • SPMS.Domain/Interfaces/IBannerRepository.cs — GetActiveListAsync (position 필터링)
  • SPMS.Infrastructure/Persistence/Repositories/BannerRepository.cs — Repository 구현
  • SPMS.Application/Interfaces/IBannerService.cs — Service 인터페이스
  • SPMS.Application/Services/BannerService.cs — Service 구현
  • SPMS.API/Controllers/BannerController.cs — Controller (Public API, 보안 등급 1)
  • DependencyInjection.cs — Application/Infrastructure DI 등록

📢 리뷰어 참고 사항 (To Reviewers)

  • 공지사항 API와 동일한 패턴 (Public API, X-Service-Code 직접 처리)
  • 페이징 없이 전체 활성 배너 반환 (배너 수가 적으므로)
  • position 파라미터로 위치별 필터링 가능 (main, sub 등)

체크리스트 (Self Checklist)

  • 빌드(Build)가 성공적으로 수행되었는가?
  • 모든 단위 테스트(Unit Test)를 통과하였는가?
  • 불필요한 로그나 주석을 제거하였는가?
  • 컨벤션(Clean Architecture, Naming)을 준수하였는가?
  • 기밀 정보(비밀번호, 키 등)가 하드코딩 되어있지 않은가?

📸 스크린샷 / 테스트 로그 (Screenshots/Logs)

Build succeeded. 경고 0개, 오류 0개
## 📋 작업 요약 - 배너 목록 API (`POST /v1/in/public/banner/list`) 구현 - position별 필터링, sort_order 정렬 지원 ## 🔗 관련 이슈 (Related Issues) Closes #80 ## 🛠️ 작업 내용 (Changes) - [x] `SPMS.Application/DTOs/Banner/` — BannerListRequestDto, BannerListResponseDto, BannerItemDto - [x] `SPMS.Domain/Interfaces/IBannerRepository.cs` — GetActiveListAsync (position 필터링) - [x] `SPMS.Infrastructure/Persistence/Repositories/BannerRepository.cs` — Repository 구현 - [x] `SPMS.Application/Interfaces/IBannerService.cs` — Service 인터페이스 - [x] `SPMS.Application/Services/BannerService.cs` — Service 구현 - [x] `SPMS.API/Controllers/BannerController.cs` — Controller (Public API, 보안 등급 1) - [x] `DependencyInjection.cs` — Application/Infrastructure DI 등록 ## 📢 리뷰어 참고 사항 (To Reviewers) - 공지사항 API와 동일한 패턴 (Public API, X-Service-Code 직접 처리) - 페이징 없이 전체 활성 배너 반환 (배너 수가 적으므로) - position 파라미터로 위치별 필터링 가능 (main, sub 등) ## ✅ 체크리스트 (Self Checklist) - [x] 빌드(Build)가 성공적으로 수행되었는가? - [x] 모든 단위 테스트(Unit Test)를 통과하였는가? - [x] 불필요한 로그나 주석을 제거하였는가? - [x] 컨벤션(Clean Architecture, Naming)을 준수하였는가? - [x] 기밀 정보(비밀번호, 키 등)가 하드코딩 되어있지 않은가? ## 📸 스크린샷 / 테스트 로그 (Screenshots/Logs) ``` Build succeeded. 경고 0개, 오류 0개 ```
seonkyu.kim added 1 commit 2026-02-10 04:41:46 +00:00
seonkyu.kim added the
Priority
Low
Status
In Progress
Type
Feature
labels 2026-02-10 04:42:02 +00:00
seonkyu.kim added this to the Phase 2-2: Public & 디바이스 & 파일 API milestone 2026-02-10 04:42:11 +00:00
seonkyu.kim self-assigned this 2026-02-10 04:42:32 +00:00
seonkyu.kim requested review from Owners 2026-02-10 04:42:42 +00:00
seonkyu.kim merged commit 8e52802bbf into develop 2026-02-10 04:43:09 +00:00
seonkyu.kim deleted branch feature/#80-banner-api 2026-02-10 04:43:40 +00:00
seonkyu.kim added
Status
Done
and removed
Status
In Progress
labels 2026-02-10 04:44:47 +00:00
Sign in to join this conversation.
No description provided.