24. Quản lý bài viết, tin tức & nội dung CMS#
Mục tiêu#
Cho phép Admin soạn thảo hướng dẫn, thể lệ, bài viết, tin tức hiển thị trên Cổng Influencer.
Luồng nghiệp vụ#
- Admin tạo/sửa bài viết (Article): rich text editor (Braft Editor).
- Quản lý tin tức (News): tạo, sửa, đổi trạng thái, clone.
- Quản lý tag: phân loại nội dung.
- Quản lý Quick Action: các liên kết hành động nhanh (hỗ trợ, hướng dẫn).
Ràng buộc dữ liệu#
| Đối tượng | Trường | Kiểu | Bắt buộc | Ghi chú |
|---|
| Article | Tiêu đề | Text | Có | |
| Article | Nội dung | Rich Text | Có | Hỗ trợ hình ảnh, link, bảng |
| Article | Trạng thái | Enum | Có | DRAFT / PUBLISHED |
| News | Tiêu đề | Text | Có | |
| News | Mô tả ngắn | Text | Không | Hiển thị ở danh sách |
| News | Nội dung | Rich Text | Có | |
| News | Ảnh bìa | File | Không | JPG/PNG |
| News | Trạng thái | Enum | Có | DRAFT / PUBLISHED |
| Tag | Tên | Text | Có | Không trùng |
| Quick Action | Tiêu đề | Text | Có | |
| Quick Action | URL | URL | Có | Link hành động |
| Quick Action | Icon | File/Text | Không | |
API đã triển khai#
- CRUD cho Articles, News, Tags, Quick Actions
Tiêu chí chấp nhận (Acceptance Criteria)#
| # | Tiêu chí | Điều kiện đạt |
|---|
| AC-24.1 | Tạo bài viết | Nhập tiêu đề + nội dung rich text → lưu DRAFT → hiển thị trong danh sách |
| AC-24.2 | Xuất bản bài viết | Đổi trạng thái PUBLISHED → hiển thị trên Cổng Influencer |
| AC-24.3 | Rich text editor | Editor hỗ trợ: bold, italic, heading, hình ảnh, link, bảng, danh sách |
| AC-24.4 | Quản lý tin tức | Tạo/sửa/clone/đổi trạng thái tin tức → hoạt động chính xác |
| AC-24.5 | Quản lý tag | Tạo/sửa/xóa tag → phân loại bài viết/tin tức chính xác |
| AC-24.6 | Quick Action | Tạo quick action → hiển thị trên Cổng Influencer, link hoạt động |
25. Quản lý thông báo (Admin → Influencer)#
Mục tiêu#
Cho phép Admin tạo và gửi thông báo đến Influencer.
Luồng nghiệp vụ#
- Admin tạo thông báo: tiêu đề, nội dung, đối tượng nhận.
- Gửi qua: in-app, push notification (FCM), email (SendGrid).
- Theo dõi trạng thái: Hoàn thành / Từ chối.
- Clone thông báo để tái sử dụng.
API đã triển khai#
POST /admin-notifications — Tạo thông báo
GET /admin-notifications — Danh sách
PUT /admin-notifications/:id — Cập nhật
POST /admin-notifications/:id/clone — Clone
PATCH /admin-notifications/:id/completed / rejected — Đổi trạng thái
Tiêu chí chấp nhận (Acceptance Criteria)#
| # | Tiêu chí | Điều kiện đạt |
|---|
| AC-25.1 | Tạo thông báo | Nhập tiêu đề + nội dung + chọn đối tượng nhận → lưu thành công |
| AC-25.2 | Gửi đa kênh | Gửi thông báo → Creator nhận qua: in-app + push (FCM) + email (SendGrid) tùy cấu hình |
| AC-25.3 | Gửi theo segment | Chọn segment → chỉ Creator trong segment nhận thông báo |
| AC-25.4 | Clone thông báo | Clone → tạo bản sao với nội dung giống, có thể chỉnh sửa trước khi gửi |
| AC-25.5 | Theo dõi trạng thái | Hiển thị trạng thái: Hoàn thành / Từ chối — Admin biết thông báo đã gửi thành công hay chưa |