26. Phân khúc người dùng (Segments)#
Mục tiêu#
Cho phép Admin phân nhóm creator để phục vụ lọc, gửi thông báo, quản lý chiến dịch.
Luồng nghiệp vụ#
- Admin tạo segment: đặt tên, mô tả mục đích.
- Thêm user vào segment thủ công hoặc import từ Excel.
- Xóa user khỏi segment.
- Sử dụng segment để: lọc danh sách user, gửi thông báo, cấu hình điều kiện chiến dịch.
Ràng buộc dữ liệu#
| Trường | Kiểu | Bắt buộc | Ghi chú |
|---|
| Tên segment | Text | Có | Không trùng |
| Mô tả | Text | Không | |
| Danh sách user | Array (User ID) | Có | Ít nhất 1 user |
API đã triển khai#
- CRUD cho Segments
POST /user-segments/import-excel — Import từ Excel
Tiêu chí chấp nhận (Acceptance Criteria)#
| # | Tiêu chí | Điều kiện đạt |
|---|
| AC-26.1 | Tạo segment | Nhập tên + mô tả → tạo thành công |
| AC-26.2 | Thêm user | Thêm user vào segment → user xuất hiện trong danh sách thành viên |
| AC-26.3 | Import từ Excel | Upload file Excel chứa danh sách user → thêm hàng loạt, báo lỗi dòng sai (user không tồn tại) |
| AC-26.4 | Xóa user | Xóa user khỏi segment → user không còn trong danh sách |
| AC-26.5 | Tên không trùng | Tạo segment trùng tên → hiển thị lỗi |
27. Đối tác & Chiến dịch matching (Campaign)#
Mục tiêu#
Quản lý đối tác (partner) và matching influencer vào chiến dịch.
Luồng nghiệp vụ#
- Quản lý danh sách đối tác (Partner): CRUD.
- Tạo chiến dịch (Campaign) cho đối tác.
- Chạy thuật toán matching: tìm influencer phù hợp cho chiến dịch.
- Thêm/Xóa influencer khỏi chiến dịch.
- Xem lịch sử matching.
API đã triển khai#
- CRUD cho Partners, Campaigns
POST /campaigns/:id/matching/run — Chạy matching
POST /campaigns/:id/influencers — Thêm influencer
Tiêu chí chấp nhận (Acceptance Criteria)#
| # | Tiêu chí | Điều kiện đạt |
|---|
| AC-27.1 | Quản lý đối tác | CRUD partner: tạo/sửa/xem/xóa → hoạt động chính xác |
| AC-27.2 | Tạo chiến dịch | Tạo campaign cho partner → lưu thành công |
| AC-27.3 | Chạy matching | Chạy thuật toán → hiển thị danh sách influencer phù hợp, kèm điểm matching |
| AC-27.4 | Thêm/Xóa influencer | Thêm influencer vào campaign → hiển thị trong danh sách. Xóa → không còn |
| AC-27.5 | Lịch sử matching | Xem được các lần chạy matching trước đó, kết quả từng lần |