Skip to main content

Quản Lý Hộp Quyền Lợi Hạng Thành Viên Trên CMS

Ngày cập nhật: 20/06/2026
File ảnh gốc: z7956573610281_98f378a6638e168b6e092e0dd45884c8.jpg

Tài liệu này ghi nhận yêu cầu xây dựng tính năng quản lý danh sách các hộp quyền lợi (Benefit Boxes) cho từng hạng thành viên (Silver, Gold, Platinum, Diamond) trên trang quản trị Admin CMS, giúp đồng bộ hiển thị động xuống Mobile App của khách hàng.


1. Hiện trạng thực tế & Vấn đề

  • Giao diện App User hiện tại: Màn hình chi tiết hạng thành viên hiển thị danh sách các hộp quyền lợi (ví dụ ở hạng Silver có 3 hộp: Tích lũy điểm thưởng, Đặt lịch hẹn ưu tiên, Nhận Voucher chào mừng).
  • Vấn đề trên CMS: Trang quản trị Admin CMS hiện chưa có phần nhập/quản lý các hộp quyền lợi này. Toàn bộ các hộp quyền lợi cùng icon và nội dung text hiện đang bị hardcode (viết cứng) dưới mã nguồn của App, khiến Admin không thể thay đổi, thêm bớt hay ẩn/hiện theo chiến dịch.

Giao diện Quyền lợi Thành viên trên App


2. Đặc Tả Yêu Cầu Tính Năng Trên Admin CMS

Cần xây dựng một phân hệ quản lý quyền lợi thành viên trong phần Cấu hình Membership trên CMS. Quản trị viên có quyền cấu hình các thông số sau cho từng hạng thẻ:

2.1. Cấu trúc trường dữ liệu của một Quyền lợi (Benefit Fields)

Mỗi hộp quyền lợi sẽ bao gồm các trường thông tin:

  1. Hạng thành viên áp dụng: Dropdown select chọn một trong các hạng (Silver, Gold, Platinum, Diamond).
  2. Biểu tượng (Icon):
    • Hỗ trợ chọn nhanh từ thư viện icon có sẵn (ví dụ: Icon Điểm thưởng/Coin, Icon Điện thoại, Icon Hộp quà).
    • Hoặc cho phép tải lên file ảnh vector dạng .svg / .png dung lượng nhẹ.
  3. Tiêu đề quyền lợi (Title): Chuỗi ký tự ngắn, in đậm trên app (Ví dụ: Tích lũy điểm thưởng, Đặt lịch hẹn ưu tiên).
  4. Mô tả chi tiết (Description): Chuỗi ký tự hiển thị bổ sung bên dưới tiêu đề (Ví dụ: (100đ = 1000 Gpoint), qua app).
  5. Thứ tự hiển thị (Sort Order): Nhập số (1, 2, 3...) để sắp xếp thứ tự hiển thị của các hộp quyền lợi từ trái qua phải hoặc từ trên xuống dưới trên App.
  6. Trạng thái hoạt động: Toggle switch để bật/tắt (Ẩn/Hiện) quyền lợi này trên App mà không cần xóa dữ liệu.

3. Đồng Bộ Dữ Liệu Lên Mobile App (API Integration)

  • Thiết kế API: Xây dựng hoặc bổ sung endpoint lấy thông tin cấu hình hạng thành viên:
    • Endpoint: GET /api/v1/membership/tiers (hoặc tích hợp vào API thông tin user profile).
    • Response mẫu (JSON):
      [
      {
      "tier": "silver",
      "min_spending": 5000000,
      "benefits": [
      {
      "id": "b_1",
      "icon_url": "https://cdn.goldenlotus.com/icons/coin.svg",
      "title": "Tích lũy điểm thưởng",
      "description": "(100đ = 1000 Gpoint)",
      "sort_order": 1,
      "is_active": true
      },
      {
      "id": "b_2",
      "icon_url": "https://cdn.goldenlotus.com/icons/phone.svg",
      "title": "Đặt lịch hẹn ưu tiên",
      "description": "qua app",
      "sort_order": 2,
      "is_active": true
      }
      ]
      }
      ]
  • Xử lý phía Client App: Mobile App thực hiện gọi API để render động danh sách các hộp quyền lợi tương ứng với tab hạng thẻ đang chọn, loại bỏ hoàn toàn việc hardcode icon và văn bản.