VIII. Vòng đời trạng thái (State Diagrams)#
1. Content (Bài tham gia)#
┌──────────────┐
Creator submit → │ PENDING │
└──────┬───────┘
│
┌────────────┼────────────┐
▼ │ ▼
┌────────────┐ │ ┌────────────┐
│ APPROVED │ │ │ REJECTED │
└────────────┘ │ └──────┬─────┘
│ │ │
│ │ Creator sửa & gửi lại
│ │ │
│ └───────────┘
│
Crawl thống kê bắt đầu
│
┌────────┴────────────────┐
│ Auto reject (not found) │
└────────┬────────────────┘
▼
┌────────────┐
│ REJECTED │
└────────────┘
Quy tắc chuyển trạng thái:
| Từ trạng thái | Đến trạng thái | Ai thực hiện | Điều kiện |
|---|
| — | PENDING | Creator | Submit link video hợp lệ |
| PENDING | APPROVED | Admin | Duyệt thủ công hoặc quick approve |
| PENDING | REJECTED | Admin | Từ chối + lý do bắt buộc |
| PENDING | REJECTED | Hệ thống | Auto reject: content không hợp lệ hoặc không tìm thấy trên nền tảng |
| APPROVED | REJECTED | Admin | Phát hiện vi phạm sau duyệt (revoke) |
| REJECTED | PENDING | Creator | Sửa và gửi lại (nếu thử thách còn mở) |
2. Hồ sơ Social (User Social)#
┌──────────────┐
Creator đăng ký → │ PENDING │
└──────┬───────┘
│
┌────────────┼────────────┐
▼ ▼
┌────────────┐ ┌────────────┐
│ APPROVED │ │ REJECTED │
└──────┬─────┘ └──────┬─────┘
│ │
│ Creator gửi lại
Phát hiện vi phạm │
│ │
▼ │
┌────────────┐ │
│ REVOKED │ │
└────────────┘ │
Quy tắc chuyển trạng thái:
| Từ trạng thái | Đến trạng thái | Ai thực hiện | Điều kiện |
|---|
| — | PENDING | Creator | Đăng ký kênh MXH |
| PENDING | APPROVED | Admin / Hệ thống | TikTok: tự động (OAuth). YouTube: tự động (API). FB/IG/Threads: Admin duyệt |
| PENDING | REJECTED | Admin / Hệ thống | Không đạt điều kiện followers hoặc hashtag không khớp |
| APPROVED | REVOKED | Admin | Phát hiện vi phạm |
| REJECTED | PENDING | Creator | Gửi lại hồ sơ |
3. Đối soát (Reconciliation)#
┌──────────┐ ┌─────────────┐ ┌────────────┐ ┌──────────┐
│ DRAFT │ ──→ │ IN_PROGRESS │ ──→ │ REVIEWED │ ──→ │ CLOSED │
└──────────┘ └──────┬──────┘ └────────────┘ └──────────┘
│
▼
┌────────────┐
│ CANCELLED │
└────────────┘
Quy tắc chuyển trạng thái:
| Từ trạng thái | Đến trạng thái | Ai thực hiện | Điều kiện |
|---|
| — | DRAFT | Admin | Tạo đợt đối soát |
| DRAFT | IN_PROGRESS | Admin | Bắt đầu đối soát |
| IN_PROGRESS | REVIEWED | Admin | Hoàn tất đánh giá checklist tất cả content items |
| REVIEWED | CLOSED | Admin | Xác nhận kết thúc → khóa đợt, cập nhật số dư user |
| IN_PROGRESS | CANCELLED | Admin | Hủy đợt đối soát |
| CLOSED | — | — | Không thể thay đổi sau khi đóng |
4. Thanh toán (Transfer)#
┌──────────┐ ┌─────────────┐ ┌────────────┐ ┌──────────┐
│ DRAFT │ ──→ │ CONFIRMED │ ──→ │ PROCESSING │ ──→ │ COMPLETED│
└──────────┘ └──────┬──────┘ └──────┬─────┘ └──────────┘
│ │
▼ ▼
┌────────────┐ ┌────────────┐
│ CANCELLED │ │ FAILED │
└────────────┘ └──────┬─────┘
│
Retry (auto)
│
▼
┌────────────┐
│ PROCESSING │
└────────────┘
Quy tắc chuyển trạng thái:
| Từ trạng thái | Đến trạng thái | Ai thực hiện | Điều kiện |
|---|
| — | DRAFT | Admin | Tạo đợt thanh toán |
| DRAFT | CONFIRMED | Admin | Xác nhận danh sách thanh toán |
| CONFIRMED | PROCESSING | Hệ thống | Đẩy lệnh rút tiền sang Service TOS |
| PROCESSING | COMPLETED | Hệ thống | TOS xác nhận thanh toán thành công → cập nhật số dư user |
| PROCESSING | FAILED | Hệ thống | TOS trả lỗi |
| FAILED | PROCESSING | Hệ thống | Retry tự động (cron mỗi 30 phút, tối đa theo cấu hình) |
| DRAFT | CANCELLED | Admin | Hủy đợt thanh toán + lý do |
| COMPLETED | — | — | Không thể thay đổi sau khi hoàn tất |
5. Chiến dịch / Thử thách (Event)#
┌──────────┐ ┌──────────┐ ┌──────────┐
│ DRAFT │ ──→ │ ACTIVE │ ──→ │ ENDED │
└──────────┘ └────┬─────┘ └──────────┘
│
▼
┌────────────┐
│ CANCELLED │
└────────────┘
| Từ trạng thái | Đến trạng thái | Ai thực hiện | Điều kiện |
|---|
| — | DRAFT | Admin | Tạo chiến dịch |
| DRAFT | ACTIVE | Admin | Kích hoạt → Creator nhìn thấy và tham gia được |
| ACTIVE | ENDED | Admin / Hệ thống | Kết thúc thủ công hoặc hết thời hạn |
| ACTIVE | CANCELLED | Admin | Hủy chiến dịch |
| ENDED | — | — | Không thể mở lại |
6. eKYC (Xác minh danh tính)#
┌──────────┐ ┌────────────┐
│ PENDING │ ──→ │ APPROVED │
└────┬─────┘ └────────────┘
│
▼
┌────────────┐
│ REJECTED │ ──→ Creator gửi lại → PENDING
└────────────┘
| Từ trạng thái | Đến trạng thái | Ai thực hiện | Điều kiện |
|---|
| — | PENDING | Creator | Gửi ảnh CCCD + xác nhận thông tin |
| PENDING | APPROVED | Admin | Duyệt |
| PENDING | REJECTED | Admin | Từ chối + lý do |
| REJECTED | PENDING | Creator | Gửi lại thông tin mới |