예약 관리
일상 운영의 핵심 기능입니다. 예약 생성·체크인·완료·취소·노쇼를 모두 다룹니다.

예약 상태 전환도
┌────────┐ 승인 ┌──────────┐
│PENDING │ ──────────► │CONFIRMED │
└────────┘ └──────────┘
│ ▲
체크인 │ │ 체크인 취소
▼ │
┌──────────┐
│CHECKED_IN│
└──────────┘
│
수강 완료 │
▼
┌──────────┐
│COMPLETED │
└──────────┘
어디서든 취소 가능 → CANCELLED
미방문 + 시간 경과 → NO_SHOW체크인과 수강 완료는 별개 입니다. 체크인은 "왔다"만 기록하고, 수강 완료는 "수업 끝났다" 의 최종 상태 전환입니다.
각 상태의 의미
| 상태 | 의미 | 카운트 |
|---|---|---|
PENDING | 고객이 예약 요청 — 관리자 승인 대기 | — |
CONFIRMED | 확정 — 당일 카운트됨 | ○ |
CHECKED_IN | 방문 기록 (완료는 아님) | ○ |
COMPLETED | 수강 완료 — 회원권 차감·리뷰 요청 발송 | ○ |
CANCELLED | 취소 | — |
NO_SHOW | 고객 미방문 | totalNoShows++ |
예약 만들기
체크인 (방문 기록)
예약 상세 → 체크인 버튼. 방문 시각이 기록됩니다.
토글 방식 — 한 번 더 누르면 방문 취소(방문 전으로 되돌림). 실수로 눌렀을 때 돌릴 수 있습니다.
버튼 상태 변화:
[체크인] ──클릭──► [✓ 방문 (탭해서 취소)]
▲ │
└─────────클릭──────────────┘수강 완료 처리
3가지 방식 중 선택할 수 있습니다.
① 강사가 앱에서 완료 버튼
가장 자연스러운 방식. 강사 앱의 오늘 예약 카드에 "수강 완료 / 노쇼" 두 버튼이 나타납니다.
강사가 본인 수업이 끝난 후 앱에서 직접 클릭 → 상태 전환.
노쇼 · 취소
취소
예약 상세 → "취소" 버튼. 사유 기록 가능.
노쇼
- 자동 판정: 업체 정책이 자동 완료 꺼짐 일 때만. 예약 종료 + 15분 경과 + 체크인 없음 → NO_SHOW 자동 전환
- 수동: 강사 앱 또는 관리자가 "노쇼" 클릭
- 모든 노쇼는 고객의
totalNoShows+1 (매너 지표)
노쇼 팔로업 자동화
자동화 설정 → 노쇼 팔로업 ON 이면 고객에게 재예약 안내 메시지 자동 발송.
대기 명단 (Waitlist)
만차인 슬롯에 고객이 대기 등록 → 자리가 나오면 자동 알림.
만차 슬롯 → 고객 대기 등록
│
▼
기존 예약 취소 발생
│
▼
첫 대기자에게 푸시 알림 "자리 났습니다"
│
├─ 수락 (TTL 내) → 자동 예약 확정
└─ 미응답 (TTL 만료) → 다음 대기자에게 전달TTL 기본값: 1시간. 설정에서 변경 가능.
캘린더 뷰
사이드바 → 캘린더 — 일/주/월 단위 시각적 조회.

- 강사별 색상 구분
- 드래그로 시간 이동 (관리자만)
- 충돌 자동 감지 — 같은 강사 중복 예약 방지
- 휴무일·공휴일은 회색 빗금 처리
자주 하는 실수
⚠️
자동 완료 켜고 노쇼 카운트가 안 올라간다고 당황하지 마세요. 의도된 동작입니다. 자동 완료 모드에서는 수동으로 "노쇼" 버튼을 눌러야 카운트됩니다.
⚠️
캘린더에서 드래그했는데 충돌 에러 — 같은 강사에 이미 예약이 있는 시간대로 이동했는지 확인. 또는 고객·강사 중 한쪽의 시간표 밖이거나.