# Phân Hệ Quản Lý Bài Làm Của Học Viên & Chấm Bài Thi (Web Exam Histories)
## 06. Hướng Dẫn Vận Hành & Xử Lý Sự Cố (SOP & Troubleshooting)

> **Mục tiêu**: Cẩm nang quy trình thao tác chuẩn từng bước (SOP) và sổ tay xử lý sự cố thực tế trên giao diện Quản lý bài làm của học viên (`exam-histories.index`) dành cho Cán bộ Quản trị, Vận hành Khảo thí và Giáo viên chấm thi.

---

## 📌 1. Tổng Quan Trách Nhiệm Vận Hành

Phân hệ **Quản lý bài làm của học viên** là trung tâm giám sát chất lượng sau thi (Post-Exam Supervision):
- **Đối với Cán bộ Vận hành Thi**: Giám sát dòng chảy bài nộp, kịp thời phân bổ bài thi tự luận (Writing, Speaking) cho giáo viên chấm theo đúng hạn chót SLA (trong vòng 24h - 48h sau thi); theo dõi các trường hợp gian lận hoặc điểm bất thường.
- **Đối với Giáo viên Chấm thi**: Thực hiện đánh giá khách quan, chấm điểm chính xác theo khung Rubric 4 tiêu chí quốc tế, đưa ra nhận xét chi tiết, mang tính xây dựng giúp học viên cải thiện kỹ năng.

---

## 📖 2. Quy Trình Thao Tác Chuẩn (Standard Operating Procedures - SOP)

### 🔹 SOP-EH-01: Quy Trình Tra Cứu & Rà Soát Bài Nộp Sau Thi
1. **Truy cập**: Đăng nhập LMS ➔ Menu **Quản lý lịch sử làm bài** ➔ Nhấp **Quản lý bài làm của HV**.
2. **Thiết lập bộ lọc**:
   - Chọn **Contest Type**: Chọn đúng kỳ thi vừa diễn ra (Ví dụ: `IELTS Final Test 4 Skills`).
   - Chọn **Khoảng thời gian nộp bài**: Chọn từ ngày thi đến hiện tại.
   - Chọn **Kỹ năng**: Nếu cần kiểm tra riêng tiến độ chấm tự luận, chọn lọc `Writing` hoặc `Speaking`.
3. **Phân tích số liệu**: Rà soát tổng số bài đã nộp, số bài đã có điểm AI, số bài đang chờ phân công chấm.

---

### 🔹 SOP-EH-02: Quy Trình Mở & Đọc Chi Tiết Bài Làm Của Học Viên
```mermaid
flowchart LR
    List["Bảng Danh Sách Bài Thi"] -->|Nhấn Icon Con Mắt| Modal["Modal Chi Tiết Bài Làm"]
    Modal --> TabLR["Tab Listening & Reading<br>Đối chiếu Đúng / Sai 40 câu"]
    Modal --> TabW["Tab Writing<br>Đọc Task 1, Task 2 & Word Count"]
    Modal --> TabS["Tab Speaking<br>Nghe Audio ghi âm Part 1/2/3"]
```

1. Tại dòng bài thi của học viên, nhấp vào biểu tượng **Con mắt** (Xem chi tiết).
2. Giao diện Modal chi tiết hiển thị:
   - **Thông tin chung**: Họ tên, Email, Lớp học, Tổng điểm 4 kỹ năng và điểm Overall.
   - **Tab Listening & Reading**: Hiển thị bảng 40 câu hỏi, tô màu xanh cho câu trả lời đúng, màu đỏ cho câu sai kèm đáp án đúng đối chiếu.
   - **Tab Writing**: Hiển thị đề bài, hình vẽ biểu đồ Task 1 (nếu có), bài viết nguyên văn của học viên và số lượng từ tự động đếm.
   - **Tab Speaking**: Hiển thị thanh trình phát âm thanh (Audio Player) cho từng phần thi. Nhấn nút Play ▶ để nghe trực tiếp chất lượng bài nói của thí sinh.

---

### 🔹 SOP-EH-03: Quy Trình Phân Công Giáo Viên Chấm Thi (Writing / Speaking)
> Áp dụng ngay sau khi học viên nộp bài để kịp tiến độ trả điểm cam kết với phụ huynh/học viên.

#### Cách 1: Phân công đơn lẻ từng bài
1. Tại dòng bài thi Writing/Speaking đang ở trạng thái `Chờ phân công`, nhấp nút **Gán GV** (icon Người dùng + Dấu cộng).
2. Trong cửa sổ hiện ra:
   - Chọn tên **Giáo viên chấm** phụ trách bộ môn.
   - Chọn **Hạn chót chấm bài (Deadline)**: Mặc định hệ thống gợi ý `+48 giờ` tính từ lúc nộp. Có thể điều chỉnh ngày giờ cụ thể.
3. Nhấn **Xác nhận phân công**.
4. Badge chuyển sang màu xanh dương: `Đã phân công - [Tên GV]`.

#### Cách 2: Phân công hàng loạt (Bulk Assign)
1. Tích chọn các ô vuông đầu dòng của danh sách bài thi cần giao.
2. Trên thanh công cụ hành động phía trên bảng, nhấp nút **Phân công đã chọn**.
3. Chọn Giáo viên chấm thi và thời hạn hoàn thành chung.
4. Nhấn **Xác nhận giao bài**. Kiểm tra thông báo Toast hoàn thành.

---

### 🔹 SOP-EH-04: Quy Trình Xử Lý Đánh Dấu Cần Chấm Lại (`ExamNeedAssignment`)
> Áp dụng khi cán bộ vận hành hoặc học viên phát hiện điểm AI/GV chấm có dấu hiệu sai sót nghiêm trọng hoặc lỗi kỹ thuật.

1. Tìm bài thi có nghi vấn trên danh sách.
2. Nhấp vào menu hành động (icon 3 chấm hoặc nút Thao tác) ➔ Chọn **Cần chấm lại**.
3. Cửa sổ xác nhận yêu cầu nhập:
   - **Lý do cần chấm lại**: (Ví dụ: *"Học viên nộp Task 2 đủ 300 từ nhưng AI chấm 0 điểm do lỗi kết nối rubric"*).
4. Nhấn nút **Xác nhận**.
5. Bản ghi sẽ được gắn cờ màu cam `Cần chấm lại` và tự động mở một phiên chấm mới cho giáo viên rà soát.
6. Khi xử lý xong, có thể nhấn **Hủy cần chấm lại** để gỡ cờ.

---

### 🔹 SOP-EH-05: Quy Trình Kiểm Tra Báo Cáo Gian Lận (Cheating Supervision)
1. Trên bảng danh sách, quan sát cột **Cảnh báo**. Các bài thi có dấu hiệu bất thường sẽ có biểu tượng **Tam giác vàng**.
2. Nhấp vào biểu tượng để xem chi tiết:
   - Số lần thoát chế độ toàn màn hình (Full-screen Exit Count).
   - Số lần chuyển tab hoặc mở ứng dụng khác trong lúc làm bài.
   - Số lần dán văn bản từ ngoài vào (Copy-Paste Events).
3. Nếu phát hiện vi phạm quy chế thi nghiêm trọng:
   - Cán bộ vận hành chuyển trạng thái bài thi thành `Vi phạm quy chế`.
   - Lập biên bản và thông báo cho Giáo vụ phụ trách để quyết định hủy bài hoặc yêu cầu thi lại.

---

### 🔹 SOP-EH-06: Quy Trình Xuất Báo Cáo Kết Quả Thi (Export CSV)
1. Lọc dữ liệu theo kỳ thi hoặc khoảng ngày cần xuất báo cáo.
2. Nhấp nút **Xuất Báo Cáo Điểm** ở góc trên bên phải.
3. Chờ thanh tiến độ chạy từ `0%` đến `100%`.
4. File nén `.zip` tải về máy. Giải nén để lấy file `.csv` chứa đầy đủ 4 cột điểm thành phần, điểm Overall, tên giáo viên chấm, nhận xét và thời gian nộp bài.

---

## 🛠️ 3. Cẩm Nang Xử Lý Sự Cố Thường Gặp (Troubleshooting & FAQ)

### ❓ Sự cố 1: Không phát được file ghi âm bài Speaking (Lỗi Audio Player)
* **Hiện tượng**: Mở Tab Speaking nhưng thanh Audio quay tròn (Loading vô hạn) hoặc báo *"Không thể phát file âm thanh"*.
* **Nguyên nhân**:
  1. Trình duyệt chặn tự động phát hoặc thiếu codec âm thanh.
  2. File ghi âm đang trong tiến trình tải lên từ máy học viên lên máy chủ lưu trữ (S3/Cloud).
  3. Đường truyền mạng nội bộ bị nghẽn.
* **Cách xử lý**:
  1. Thử làm mới trang (F5) hoặc mở trên trình duyệt Google Chrome bản mới nhất.
  2. Nhấp chuột phải vào link file âm thanh (nếu có nút Download Audio) để tải trực tiếp file về máy tính và nghe bằng phần mềm Windows Media Player / VLC.
  3. Nếu file tải về có dung lượng `0 KB`: Báo cho cán bộ kỹ thuật kiểm tra log nộp bài của học viên xem có bị ngắt kết nối lúc Submit không.

---

### ❓ Sự cố 2: Điểm Overall hiển thị sai lệch so với trung bình cộng 4 kỹ năng
* **Hiện tượng**: Điểm trung bình là 6.25 nhưng Overall hiển thị 6.5 (hoặc 6.125 nhưng hiển thị 6.0). Cán bộ vận hành thắc mắc hệ thống bị lỗi tính toán.
* **Giải thích nghiệp vụ**:
  - Hệ thống áp dụng **Quy tắc làm tròn chuẩn quốc tế của Hội đồng Khảo thí IELTS**:
    - Dưới `.25` (ví dụ: `6.125`) ➔ Làm tròn xuống `.0` (➔ `6.0`).
    - Từ `.25` đến dưới `.75` (ví dụ: `6.25`, `6.375`, `6.625`) ➔ Làm tròn về `.5` (➔ `6.5`).
    - Từ `.75` trở lên (ví dụ: `6.75`, `6.875`) ➔ Làm tròn lên số nguyên kế tiếp (➔ `7.0`).
  - Do đó kết quả trên là hoàn toàn chính xác theo chuẩn khảo thí quốc tế, không phải lỗi phần mềm.

---

### ❓ Sự cố 3: Không gán được giáo viên chấm (Dropdown Giáo viên bị trống)
* **Nguyên nhân**:
  1. Tài khoản giáo viên đó chưa được cấp quyền chấm thi trong phân hệ `tenant_groups.php` (`web_exam_grading`).
  2. Giáo viên chưa được gán thuộc tính chuyên môn tương ứng (ví dụ: gán bài Writing nhưng GV chỉ có tag Speaking).
* **Cách xử lý**:
  - Liên hệ Quản trị viên hệ thống để kiểm tra nhóm quyền và phân quyền chuyên môn cho giáo viên trước khi gán bài.

---

### ❓ Sự cố 4: Nút "Gán GV" hoặc "Sửa điểm" bị ẩn
* **Nguyên nhân**: Bài thi này đã được phê duyệt chốt điểm chính thức và đã đồng bộ sang hệ thống Zeus / ICL.
* **Cách xử lý**: Khi bài thi đã chốt điểm, mọi thay đổi phải đi qua quy trình **Phúc Khảo** (`exam-regrading`) để đảm bảo tính khách quan và lưu vết kiểm toán đầy đủ.

---

## ⏱️ 4. Bảng Cam Kết Thời Gian Xử Lý (Service Level Agreement - SLA)

| Hạng Mục Công Việc | Thời Gian Chuẩn (SLA) | Trách Nhiệm Phụ Trách |
| :--- | :---: | :--- |
| **Phân công bài thi sau khi học viên nộp** | Trong vòng **4 giờ** | Cán bộ Vận hành Thi |
| **Giáo viên chấm hoàn tất bài thi Writing/Speaking** | Trong vòng **24 - 48 giờ** | Giáo viên Chấm thi |
| **Xử lý các bài thi bất thường / Nghi vấn gian lận** | Trong vòng **12 giờ** | Cán bộ Vận hành & Giáo vụ |
| **Chốt điểm và đồng bộ sang hệ thống Zeus** | Ngay khi có đủ 4 điểm | Hệ thống tự động (Automated Job) |
