[FE-33] 웹 슬롯 open/close 화면 확장 (W-SL)
작업 내용 (설계 의도)
변경 사항
기존 web/app/portal/slots/page.tsx를 확장한다.
- 각 슬롯 행에 status 배지(OPEN=success/CLOSED=warning·회색) + 단일 토글 액션([마감]/[오픈]).
closeSlot/openSlot(FE-30) 호출, 확인 다이얼로그(“신규 예약만 차단, 기존 예약은 유지됩니다”). 성공 시 상태 배지 즉시 갱신. - 기존 슬롯 CRUD(생성/수정/삭제) 무변경. 색은 Tailwind 시맨틱 클래스(라이트/다크).
근거: design-fe-web W-SL, FR-10(클로즈=신규 차단, 기존 예약 유지).
의존
- FE-30 (slots close/open lib)
다이어그램
클래스 의존
flowchart LR Page["portal/slots/page"] --> Lib["lib/portal/slots.ts close/open (FE-30)"] Page --> Dialog["ConfirmDialog"]
테스트 케이스
- OPEN 슬롯에 [마감] 액션이 노출되고 클릭 시 확인 다이얼로그가 뜬다
- 확인 시 closeSlot 호출 후 배지가 CLOSED로 갱신된다
- CLOSED 슬롯에 [오픈] 액션이 노출되고 openSlot이 호출된다
- 409(상태 충돌) 시 toast가 노출된다
- 기존 슬롯 CRUD가 무변경이다(회귀)
- 라이트/다크 시맨틱 클래스로 렌더된다