## Sơ đồ tổng quan tất cả tính năng (góc nhìn người dùng)

```mermaid
flowchart LR
    %% Người dùng chính
    subgraph Users[Người dùng]
        GV[Giáo viên]
        CSKH[Vận hành / CSKH]
    end

    %% Khối phân quyền & nhiều đơn vị
    subgraph Tenant[Phân quyền & nhiều đơn vị]
        PERM[Phân quyền & gán người dùng vào Tenant - Admin]
        CAMPASSIGN[Gán người dùng vào Campaigns - Admin]
        CAMPSW[Chọn / đổi Campaign trên header]
    end

    %% Khối cấu hình & chuẩn bị kỳ thi
    subgraph Setup[Cấu hình & chuẩn bị kỳ thi]
        CAM[Quản lý Campaigns - Admin]
        EXCMS[Exams CMS]
        MAP[Exam Mapping]
        CFG[Cấu hình chi tiết kỳ thi]
    end

    %% Khối chấm điểm
    subgraph ChamDiem[Chấm điểm & phúc khảo]
        MYASM["Bài cần chấm" của tôi]
        ASSESS[Chi tiết bài thi để chấm / sửa điểm]
    end

    %% Khối báo cáo
    subgraph BaoCao[Báo cáo & theo dõi]
        LIST[Danh sách học sinh làm bài]
        HISTORY[Chi tiết lịch sử thi]
        EXPORT[Export Excel]
        TRACK[Tracking UTM]
    end

    %% Luồng tổng quan
    CSKH --> CAMPSW

    GV --> CAMPSW

    CSKH --> LIST
    CSKH --> HISTORY
    CSKH --> EXPORT
    CSKH --> TRACK
    CSKH --> EXCMS
    CSKH --> MAP
    CSKH --> CFG

    GV --> MYASM
    GV --> ASSESS

    LIST --> HISTORY
    LIST --> EXPORT
```

**Giải thích ngắn gọn (map với các sơ đồ chi tiết)**:
- Khối **Cấu hình & chuẩn bị kỳ thi** (Feature 1–4): admin tạo và quản lý **Campaigns**, tạo/cập nhật **Exams nội bộ (CMS) gắn với đề EMS**, ghép đề vào Campaigns (Exam Mapping) và cấu hình chi tiết (Exam Configs).
- Khối **Tổ chức & thực hiện bài thi** (Feature 5): hệ thống thi trực tuyến (EMS) ghi nhận kết quả làm bài của học viên, lưu lại trong **StudentScore + lịch sử thi** để các màn hình báo cáo sử dụng.
- Khối **Chấm điểm & phúc khảo** (Feature 6): giáo viên xem danh sách các bài cần chấm, vào chi tiết từng bài để chấm/re-score và lưu lại kết quả mới.
- Khối **Theo dõi & báo cáo** (Feature 7–8): màn hình **Danh sách học sinh làm bài** và **Lịch sử thi** cho phép lọc theo đề, Campaign, trạng thái, giáo viên…, xuất Excel; màn hình **Tracking** cho phép xem hiệu quả Campaign marketing (UTM, nguồn, kênh, từ khóa).
- Khối **Phân quyền & nhiều đơn vị** (Feature 9–10): hỗ trợ nhiều tenant/đơn vị; admin phân quyền vai trò, gán người dùng vào tenant và Campaigns. Người dùng phải được gán **tenant + campaign** mới truy cập được; nếu chưa được gán Campaign sẽ dừng ở màn hình “chờ gán chiến dịch”, và có thể **đổi Campaign** đang làm việc thông qua nút chọn Campaign trên header.

