Skip to content

디스플레이 포스터·학사 일정 관리 API와 화면 조회 API 이전 #205

Open

Description

@xeoxxn

어떤 기능인가요?

추가하려는 기능에 대해 간결하게 설명해주세요

빌릴게 레거시 서버(billilge/backend domain/display)의 디스플레이 기능을 옮긴다. 오프라인 디스플레이가 로그인 없이 부르는 화면 조회 API와, 운영진이 행사 포스터·학사 일정을 관리하는 API를 만든다. 새 관리자 화면(디스플레이 관리)에 맞춰 스키마를 바꾼다.

엔드포인트 설명
GET /v1/display 화면 조회 (활성 포스터, 오늘 앞뒤 3일 학사 일정, 물품 재고). 인증 없음
GET·POST /v1/admin/display/posters 포스터 목록 조회·등록
PUT·DELETE /v1/admin/display/posters/{posterId} 포스터 수정·삭제
PATCH /v1/admin/display/posters/{posterId}/active 포스터 활성 여부 변경
GET·POST /v1/admin/display/calendar-schedules 학사 일정 조회(기간 겹침)·등록
PUT·DELETE /v1/admin/display/calendar-schedules/{scheduleId} 학사 일정 수정·삭제

📝 작업 상세 내용

  • 스키마 변경 — 포스터 image_key → image_file_id, 학사 일정 날짜+문자열 목록 → 일정명+기간
  • 포스터 이미지 파일 카테고리 DISPLAY_POSTER
  • 포스터·학사 일정 관리 서비스
  • 포스터 관리자 API
  • 학사 일정 관리자 API
  • 물품 전체 조회
  • 디스플레이 화면 조회 API (공개)

📁 참고 자료 (선택)

정한 것

  • 학사 일정은 일정 1건 = 일정명 + 기간. 새 관리자 화면이 기간으로 다룬다
  • 포스터 이미지는 presigned 업로드 후 파일 ID로 받는다 (홈 배너와 같음)
  • 활성화 API는 하나로 합친다. 레거시의 POST /activate·DELETE /deactivate를 PATCH /active 하나로 바꾼다. 비활성화는 삭제가 아니고, 화면도 토글이다
  • 화면 조회는 ApiResponse로 감싼다. schedules는 [{date, titles}] 7개로 바꾼다
  • 레거시 데이터는 이관하지 않는다. 관리자 화면에서 다시 등록한다
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions