7. Quản lý chiến dịch (Campaigns)#
Mục tiêu#
Cho phép Admin tạo, xem, chỉnh sửa chiến dịch và quản lý Influencer tham gia thông qua thuật toán matching.
Luồng nghiệp vụ#
Danh sách Campaigns:
- Admin truy cập trang Campaigns.
- Lọc theo Trạng thái, Tìm kiếm theo từ khóa.
- Bảng hiển thị: Tên chiến dịch, badge trạng thái, Ngày tạo, Số Influencer đã chọn.
- Click nút Tạo chiến dịch → vào trang tạo mới.
Tạo/Chỉnh sửa Campaign:
- Form điền thông tin chiến dịch: Tên, mô tả, trạng thái, ngày bắt đầu/kết thúc, ngân sách.
- Bảng chọn Influencer (multi-select).
- Nút Save / Cancel.
Chi tiết Campaign — 3 tab:
- Tab Thông tin (Info): Tên, mô tả, trạng thái, ngày, ngân sách, nút Chỉnh sửa.
- Tab Matching:
- Bảng kết quả matching (thuật toán ghép Influencer-Campaign)
- Click vào dòng → modal "Chi tiết điểm matching" hiển thị breakdown điểm theo tiêu chí
- Nút "Chạy Matching" → trigger thuật toán → kết quả cập nhật
- Lịch sử các lần chạy
- Tab Influencers:
- Danh sách Influencer đã chọn
- Thêm/xóa Influencer
- Hiệu suất từng Influencer trong chiến dịch (Lượt xem, Tương tác, Doanh thu)
API đã triển khai#
GET /campaigns— Danh sách chiến dịchGET /campaigns/:id— Chi tiết chiến dịchPOST /campaigns— Tạo chiến dịch mớiPUT /campaigns/:id— Cập nhật chiến dịchPOST /campaigns/:id/matching— Chạy thuật toán matchingGET /campaigns/:id/matching-results— Kết quả matchingGET /campaigns/:id/influencers— Danh sách Influencer đã chọnPOST /campaigns/:id/influencers— Thêm InfluencerDELETE /campaigns/:id/influencers/:influencerId— Xóa Influencer
Tiêu chí chấp nhận#
| # | Tiêu chí | Điều kiện đạt |
|---|---|---|
| AC-DB.7.1 | Danh sách Campaigns | Hiển thị với badge trạng thái, filter/search hoạt động, phân trang đúng |
| AC-DB.7.2 | Tạo chiến dịch | Điền form → submit → chiến dịch mới xuất hiện trong danh sách |
| AC-DB.7.3 | Validate form | Thiếu trường bắt buộc → báo lỗi, không cho submit |
| AC-DB.7.4 | Chỉnh sửa chiến dịch | Lưu thay đổi → dữ liệu cập nhật, không mất dữ liệu cũ |
| AC-DB.7.5 | 3 tab chi tiết | Chuyển Info / Matching / Influencers → nội dung tương ứng hiển thị đúng |
| AC-DB.7.6 | Modal điểm matching | Click vào dòng trong bảng matching → modal hiện chi tiết điểm theo tiêu chí |
| AC-DB.7.7 | Chạy matching | Click "Chạy Matching" → loading → kết quả cập nhật, lịch sử lưu lại |
| AC-DB.7.8 | Thêm/xóa Influencer | Tab Influencers → thêm hoặc xóa → danh sách cập nhật ngay |
| AC-DB.7.9 | Hiệu suất Influencer | Mỗi Influencer trong chiến dịch hiển thị số liệu hiệu suất |