# 빠른 시작 가이드 ## 1. 설치 및 실행 ### 가상환경 설정 ```bash # 프로젝트 디렉토리로 이동 cd waiting # 가상환경 생성 python3 -m venv venv # 가상환경 활성화 source venv/bin/activate # Mac/Linux # 또는 venv\Scripts\activate # Windows # 패키지 설치 pip install -r requirements.txt ``` ### 서버 실행 ```bash python main.py ``` 서버가 실행되면 http://localhost:8000 으로 접속하세요. ## 2. 초기 설정 ### 2-1. 매장 설정 1. 메인 페이지에서 "매장 설정" 클릭 2. **매장 정보** 탭에서: - 매장명 입력 (예: "행복 헬스장") - 대기현황판 표시 클래스 수: 3 (기본값) - 클래스당 줄 수: 1 (기본값) - 대기자 리스트 방향: 세로 방향 - 관리자 비밀번호: 원하는 비밀번호 설정 3. "설정 저장" 클릭 ### 2-2. 클래스 등록 1. 매장 설정 화면에서 **클래스 관리** 탭 클릭 2. "클래스 추가" 버튼 클릭 3. 교시 정보 입력: - 교시 번호: 1 - 교시명: 1교시 - 시작 시간: 10:00 - 종료 시간: 11:00 - 최대 수용 인원: 10명 4. "저장" 클릭 5. 같은 방법으로 2교시, 3교시 등록: - 2교시: 11:00 - 12:00 - 3교시: 13:00 - 14:00 ## 3. 영업 시작 ### 3-1. 개점하기 1. 메인 페이지로 이동 2. "개점하기" 버튼 클릭 3. 영업 상태가 "영업 중"으로 변경됨 4. 대기번호가 1번부터 시작됨 ## 4. 대기 접수 ### 4-1. 데스크에서 접수 1. 메인 페이지에서 "대기접수 (데스크)" 클릭 2. 키패드로 핸드폰번호 뒷자리 8자리 입력 - 예: 1234-5678 - 010은 자동으로 붙음 (01012345678) 3. "대기 접수" 버튼 클릭 4. 접수 완료 팝업 확인: - 대기번호 - 배정된 교시 - 교시 내 순서 ### 4-2. 모바일에서 셀프 접수 1. 모바일 기기로 http://localhost:8000/mobile 접속 2. "대기 접수" 탭에서 핸드폰번호 입력 3. "대기 접수" 버튼 클릭 4. 접수 결과 확인 ### 4-3. 대기 조회 (모바일) 1. 모바일 화면에서 "대기 조회" 탭 클릭 2. 핸드폰번호 입력 3. "조회하기" 버튼 클릭 4. 현재 대기 정보 확인: - 대기번호 - 교시 - 앞에 대기 중인 인원 수 ## 5. 대기현황판 표시 ### 5-1. 현황판 열기 1. TV 또는 모니터를 준비 2. 브라우저에서 http://localhost:8000/board 접속 3. 전체화면(F11)으로 전환 4. 실시간으로 대기 현황이 표시됨 (5초마다 자동 갱신) ### 5-2. 현황판 설명 - 교시별로 구분되어 표시 - 대기번호와 이름(또는 폰번호 뒷자리) 표시 - 각 교시별 대기자 수와 최대 인원 표시 ## 6. 대기자 관리 ### 6-1. 대기자 관리 화면 1. 메인 페이지에서 "대기자 관리" 클릭 2. 교시별 탭으로 구분됨 3. 각 대기자별로 다음 작업 가능: ### 6-2. 출석 처리 1. 대기자가 입장하면 "출석" 버튼 클릭 2. 해당 대기자가 목록에서 사라짐 ### 6-3. 취소 처리 1. 대기자가 취소하면 "취소" 버튼 클릭 2. 해당 대기자가 목록에서 제거됨 ### 6-4. 호출 1. 문제 발생 시 "호출" 버튼 클릭 2. 호출 횟수가 기록됨 ### 6-5. 순서 변경 1. 위/아래 화살표 버튼으로 순서 조정 2. 같은 교시 내에서만 이동 ### 6-6. 교시 이동 1. 좌/우 화살표 버튼으로 다른 교시로 이동 2. 예: 1교시 → 2교시로 변경 ### 6-7. 일괄 출석 1. 화면 상단의 "○교시 일괄출석" 버튼 클릭 2. 해당 교시 전체 대기자가 출석 처리됨 3. 다음 교시가 일괄출석 대상이 됨 ## 7. 회원 관리 ### 7-1. 회원 개별 등록 1. 메인 페이지에서 "회원 관리" 클릭 2. "회원 등록" 버튼 클릭 3. 이름과 핸드폰번호 입력 4. "저장" 클릭 ### 7-2. 회원 검색 1. 검색창에 이름 또는 핸드폰번호 입력 2. "검색" 버튼 클릭 3. 일치하는 회원 목록 표시 ### 7-3. 엑셀 일괄 등록 #### 엑셀 파일 준비 - 1열: 이름 - 2열: 핸드폰번호 (01012345678 형식) - 첫 번째 행은 헤더 (스킵됨) 예시: ``` 이름 핸드폰번호 홍길동 01012345678 김철수 01098765432 이영희 01011112222 ``` #### 업로드 절차 1. "엑셀 일괄등록" 버튼 클릭 2. 엑셀 파일 선택 3. "검수하기" 버튼 클릭 4. 검수 결과 확인: - 유효한 데이터 개수 - 오류 데이터 목록 (이름 없음, 번호 형식 오류, 중복 등) 5. 오류가 없다면 "최종 등록" 클릭 6. 등록 완료 ## 8. 일마감 ### 8-1. 마감 처리 1. 영업 종료 시 메인 페이지로 이동 2. "일마감" 버튼 클릭 3. 확인 메시지 확인: - 총 대기자 수 - 출석 수 - 취소 수 4. 확인 클릭 ### 8-2. 마감 후 - 대기번호가 초기화됨 - 통계가 데이터베이스에 저장됨 - 다음 영업일에 다시 "개점하기" 필요 ## 9. 일반적인 운영 흐름 ``` 아침 출근 ↓ 개점하기 (메인 페이지) ↓ 대기 접수 시작 (데스크 또는 모바일) ↓ 대기현황판 표시 (TV/모니터) ↓ 대기자 관리 (출석/취소) ↓ 1교시 일괄출석 ↓ 2교시, 3교시 순차 진행 ↓ 영업 종료 ↓ 일마감 (메인 페이지) ↓ 통계 확인 ``` ## 10. 자주 묻는 질문 ### Q1. 대기번호는 언제 초기화되나요? A. 일마감 후 다음 날 개점할 때 1번부터 다시 시작됩니다. ### Q2. 회원이 아닌 사람도 접수 가능한가요? A. 네, 핸드폰번호만으로 접수 가능합니다. 회원인 경우 자동으로 이름이 표시됩니다. ### Q3. 교시를 잘못 배정했어요. 어떻게 변경하나요? A. 대기자 관리 화면에서 좌/우 화살표 버튼으로 다른 교시로 이동 가능합니다. ### Q4. 현황판이 자동으로 갱신되나요? A. 네, 5초마다 자동으로 갱신됩니다. ### Q5. 모바일에서 대기 조회가 안 돼요. A. 핸드폰번호를 정확히 입력했는지 확인하세요. 010 뒤의 8자리를 입력해야 합니다. ### Q6. 엑셀 파일 형식이 안 맞아요. A. 1열에 이름, 2열에 핸드폰번호 (01012345678 형식), 첫 행은 헤더입니다. ### Q7. 통계는 어디서 확인하나요? A. 현재는 일마감 시 팝업으로 표시됩니다. API를 통해 조회 가능합니다. ## 11. 문제 해결 ### 서버가 시작되지 않아요 1. 가상환경이 활성화되어 있는지 확인 2. 모든 패키지가 설치되었는지 확인: `pip list` 3. 포트 8000이 이미 사용 중인지 확인 ### 데이터가 저장되지 않아요 1. SQLite 데이터베이스 파일 확인: `waiting_system.db` 2. 파일 권한 확인 ### 현황판이 표시되지 않아요 1. 브라우저 콘솔(F12)에서 에러 확인 2. 개점이 되어 있는지 확인 3. 대기자가 등록되어 있는지 확인 ## 12. 추가 정보 - API 문서: http://localhost:8000/docs - 관리자 화면들은 모두 PC, 태블릿, 모바일에서 반응형으로 동작합니다. - 대기현황판은 TV나 대형 모니터에 최적화되어 있습니다. 문제가 있거나 궁금한 점이 있다면 README.md를 참고하세요.