Files
waiting-system/docs/가이드_교시마감시스템.md
Jun-dev f699a29a85 Add waiting system application files
- Add main application files (main.py, models.py, schemas.py, etc.)
- Add routers for all features (waiting, attendance, members, etc.)
- Add HTML templates for admin and user interfaces
- Add migration scripts and utility files
- Add Docker configuration
- Add documentation files
- Add .gitignore to exclude database and cache files

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-14 00:29:39 +09:00

236 lines
7.6 KiB
Markdown

# 교시 마감 시스템 사용 가이드
## 📖 개요
교시 마감 시스템은 특정 교시에 더 이상 대기자를 받지 않도록 마감 처리하는 기능입니다. 마감된 교시의 대기자 리스트는 그대로 유지되며, 비활성화 상태로 표시됩니다.
## 🎯 주요 기능
### 1. 교시 마감
- 특정 교시를 마감하여 신규 대기자 등록 차단
- 마감 후에도 기존 대기자 목록은 유지
- 실시간으로 모든 화면에 마감 상태 반영
### 2. 시각적 표시
- **마감된 교시 탭**: 빨간색으로 표시
- **마감 배지**: 인원수 옆에 "마감" 텍스트 표시
- **비활성화 상태**: 대기자 리스트 회색으로 표시
- **안내 메시지**: "🔒 마감된 교시입니다" 표시
### 3. 기능 제한
- 마감된 교시에는 신규 대기자 등록 불가
- 마감된 교시로 대기자 이동 불가 (왼쪽 화살표 비활성화)
- 마감된 교시의 대기자 관리 기능 비활성화
## 📱 사용 방법
### 교시 마감하기
1. **대기자 관리 페이지** 접속
- URL: `http://localhost:8000/manage`
2. **마감 대상 확인**
- 화면 상단의 "교시 마감" 섹션에서 마감 대상 교시 확인
- 예: "1교시 5명 대기 중"
3. **마감 버튼 클릭**
- "1교시 마감" 버튼 클릭
4. **확인 다이얼로그**
```
1교시을(를) 마감하시겠습니까?
마감 후 해당 교시에는 더 이상 대기자를 등록할 수 없습니다.
```
- "확인" 클릭
5. **마감 완료**
- 성공 메시지: "1교시이(가) 마감되었습니다."
- 교시 탭이 빨간색으로 변경
- "마감" 배지 표시
### 마감된 교시 확인하기
#### 교시 탭에서 확인
- **빨간색 탭**: 마감된 교시
- **파란색 탭**: 진행 중인 교시
#### 마감 배지
```
1교시 5명 마감
```
#### 대기자 리스트
- **상단 안내**: "🔒 마감된 교시입니다"
- **리스트**: 회색으로 표시, 모든 버튼 비활성화
### 마감 후 동작
#### 신규 대기자 등록 시
대기 접수 화면에서 등록 시도 시:
- 마감되지 않은 다음 교시에 자동 배치
- 모든 교시가 마감된 경우: "모든 교시가 마감되었습니다. 대기 접수를 받을 수 없습니다." 오류 메시지
#### 대기자 이동 시
- 마감된 교시로는 이동 불가
- 왼쪽 화살표 버튼이 비활성화됨
## 🖼️ 화면 설명
### 대기자 관리 화면
```
┌─────────────────────────────────────────────────┐
│ 대기자 관리 ← 메인으로 │
├─────────────────────────────────────────────────┤
│ 📊 교시 마감 │
│ 1교시 5명 대기 중 [1교시 마감] │
└─────────────────────────────────────────────────┘
┌────────────────────────────────────────────────┐
│ [1교시 5명] [2교시 3명 마감] [3교시 2명] │ ← 교시 탭
└────────────────────────────────────────────────┘
↑ ↑
진행중 마감됨(빨강)
┌────────────────────────────────────────────────┐
│ 🔒 마감된 교시입니다 │ ← 마감 안내
├────────────────────────────────────────────────┤
│ 1 홍길동 010-1234-5678 1교시 1번째 │
│ [←] [→] [호출] [빈좌석] [출석] [취소] │ ← 모두 비활성화
│ 2 김철수 010-2345-6789 1교시 2번째 │
│ ... │
└────────────────────────────────────────────────┘
```
### 교시 탭 색상
| 상태 | 색상 | 배지 | 설명 |
|------|------|------|------|
| 진행 중 | 파란색 | 없음 | 대기자 등록 가능 |
| 마감됨 | 빨간색 | "마감" | 대기자 등록 불가 |
## ⚠️ 주의사항
### 1. 마감은 되돌릴 수 없음
- 현재 버전에서는 마감 취소 기능이 없습니다
- 신중하게 마감 처리하세요
### 2. 기존 대기자는 영향 없음
- 마감 전에 등록된 대기자는 정상적으로 처리 가능
- 출석, 취소 등의 상태 변경은 가능합니다
- 단, 마감된 교시 자체의 관리 화면에서는 버튼이 비활성화됩니다
### 3. 교시 순서 고려
- 마감된 교시 다음 교시로만 대기자 이동 가능
- 마감된 교시 이전 교시에서 마감된 교시로 이동 불가
### 4. 일마감과의 관계
- 교시 마감은 일마감과 별개입니다
- 일마감을 하려면 별도로 처리해야 합니다
## 🔧 문제 해결
### Q1. 마감 버튼이 비활성화되어 있어요
**원인**: 대기자가 없거나 이미 모든 교시가 마감됨
**해결**: 대기자가 있는 교시가 생기면 자동으로 활성화됩니다
### Q2. 마감한 교시를 취소하고 싶어요
**현재**: 마감 취소 기능이 없습니다
**임시 해결책**:
1. 데이터베이스 직접 수정 (권장하지 않음)
2. 일마감 후 다음 날 새로 시작
### Q3. 마감된 교시에 대기자가 등록되었어요
**원인**: 마감 전에 등록 프로세스가 시작된 경우
**해결**:
1. 해당 대기자를 다음 교시로 이동
2. 또는 취소 처리
### Q4. 화면이 자동으로 업데이트되지 않아요
**원인**: SSE 연결 끊김
**해결**:
1. 페이지 새로고침 (F5)
2. 브라우저 캐시 삭제
3. 서버 재시작
## 📊 API 엔드포인트
### 교시 마감
```http
POST /api/board/batch-attendance
Content-Type: application/json
{
"class_id": 1
}
```
**응답**:
```json
{
"message": "1교시이(가) 마감되었습니다.",
"waiting_count": 5
}
```
### 마감된 교시 목록 조회
```http
GET /api/board/closed-classes
```
**응답**:
```json
{
"closed_class_ids": [1, 2]
}
```
### 다음 마감 대상 조회
```http
GET /api/board/next-batch-class
```
**응답**:
```json
{
"class_id": 3,
"class_name": "3교시",
"class_number": 3,
"waiting_count": 7
}
```
## 💡 팁
### 효율적인 교시 마감 방법
1. **순차적 마감**: 1교시부터 순서대로 마감
2. **대기자 확인**: 마감 전 대기자 수와 출석 현황 확인
3. **이동 완료 후 마감**: 다른 교시로 이동할 대기자가 있다면 이동 후 마감
4. **확인 습관**: 마감 전 반드시 확인 다이얼로그 내용 확인
### 마감 타이밍
- ✅ 교시 시작 10분 전: 적절한 마감 시점
- ✅ 해당 교시 대기자가 모두 입장: 마감 가능
- ❌ 교시 시작 직후: 너무 이른 마감
- ❌ 다음 교시 시작 후: 너무 늦은 마감
## 🔗 관련 문서
- [개발 일지 - 교시 마감 시스템](./개발일지_교시마감시스템.md)
- [다음 할 일](../클로드.md)
## 📞 지원
문제가 발생하거나 질문이 있으신 경우:
1. 개발 일지 문서 참조
2. 로그 확인 (브라우저 개발자 도구 콘솔)
3. 서버 로그 확인
---
**버전**: 1.0.0
**최종 업데이트**: 2025-11-28
**작성자**: Claude (AI Assistant)