OVIRO LogoOVIRO
Quản lý sản phẩm (PIM)Danh mục sản phẩm

Lấy thuộc tính danh mục

Lấy cấu hình bộ lọc và thuộc tính kỹ thuật (Attribute Schema) của danh mục.

Endpoint

GET /site/productcategories/getattributecategory/{category_id}

Headers

KeyValueBắt buộcMô tả
SiteTenantId{tenant_id}ID của công ty/tenant.

Workflow & Logic

API này cực kỳ quan trọng để xây dựng:

  1. Bộ lọc (Filter Sidebar): Hiển thị các thuộc tính lọc (Màn hình, RAM, CPU...) tương ứng với danh mục đang xem.
  2. Thông số kỹ thuật: Hiển thị bảng thông số kỹ thuật chuẩn của sản phẩm trong danh mục.

Quy trình xử lý (Internal Processing)

  1. Tìm danh mục (Find Category):

    • Tìm danh mục theo category_id.
  2. Kế thừa thuộc tính (Attribute Inheritance Strategy):

    • Kiểm tra xem danh mục hiện tại có được gán attribute_category_id hay không.
    • Nếu có: Lấy cấu hình thuộc tính đó.
    • Nếu không: Hệ thống tự động Đệ quy ngược lên cha (parent_id) để tìm cấu hình thuộc tính của danh mục cha.
    • Ví dụ: Nếu danh mục "iPhone 15" không có cấu hình riêng, nó sẽ dùng cấu hình của danh mục cha "Điện thoại thông minh".
  3. Cấu trúc dữ liệu trả về (Data Structure Building):

    • Load AttributeCategory (Nhóm cấu hình).
    • Load AttributeGroup (Các nhóm thuộc tính, ví dụ: "Hiển thị", "Cấu hình", "Camera").
    • Load Attribute (Các thuộc tính chi tiết, ví dụ: "Kích thước màn hình", "Độ phân giải").
  4. Kết quả:

    • Trả về cấu trúc cây phân cấp đầy đủ để Frontend render UI.

Parameters

TênKiểuBắt buộcMô tả
category_idintegerID danh mục cần lấy thuộc tính.

Response Schema

HTTP 200 - JSON Object

{
  "total": 1,
  "currentpage": 1,
  "limit": 50,
  "items": [
    {
      "id": 10,
      "name": "Điện thoại",
      // ... category fields
      "attribute_category": {
        "id": 5,
        "name": "Thuộc tính điện thoại",
        // ... attribute category fields
      },
      "attribute_group": [
        {
          "id": 101,
          "name": "Màn hình",
          "display_order": 1,
          "attribute": [
            {
               "id": 1001,
               "name": "Kích thước",
               "type": 1, // Text, Number, Select...
               // ... attribute fields
            }
          ]
        }
      ]
    }
  ]
}

Các lỗi thường gặp (422)

Mã lỗiMô tả
error_not_permissionKhông tìm thấy thông tin category_id hợp lệ trong yêu cầu.

On this page