ReviewĐánh giá sản phẩm
Danh sách đánh giá sản phẩm theo sản phẩm
Lấy danh sách đánh giá sản phẩm đã được duyệt theo sản phẩm
Endpoint
GET /site/productreviews/product/{product_id}
Headers
| Key | Value | Bắt buộc | Mô tả |
|---|---|---|---|
SiteTenantId | {tenant_id} | Có | ID của công ty/tenant. |
Workflow & Logic
API này lấy danh sách các đánh giá sản phẩm đã được duyệt của một sản phẩm, phục vụ việc hiển thị đánh giá trên trang chi tiết sản phẩm.
Quy trình xử lý (Internal Processing)
-
Khởi tạo & Kiểm tra (Initialization & Validation):
- Khởi tạo site context từ header
SiteTenantId(không yêu cầu đăng nhập). - Kiểm tra
product_idcó hợp lệ (phải > 0).
- Khởi tạo site context từ header
-
Lọc dữ liệu (Filtering):
-
Chỉ lấy các đánh giá có:
status = STATUS_APPROVED(đã được duyệt).visible = 1(hiển thị công khai).product_idkhớp với sản phẩm được yêu cầu.
-
-
Sắp xếp & Phân trang (Sorting & Pagination):
- Sắp xếp theo trường được chỉ định (
sort_by), mặc định theoidgiảm dần (DESC). - Phân trang với
pagevàlimit, mặc địnhpage = 1vàlimit = 50(tối đa 50).
- Sắp xếp theo trường được chỉ định (
-
Đếm tổng số bản ghi (Counting):
- Đếm tổng số bản ghi phù hợp với điều kiện lọc (không áp dụng limit).
-
Làm giàu dữ liệu (Data Enrichment):
- Lấy danh sách
ProductReviewtheo điều kiện lọc, sắp xếp và phân trang. - Với mỗi review, xóa các trường nhạy cảm (
internal_note,moderator_id).
- Lấy danh sách
-
Format & Trả về (Formatting & Response):
- Tổng hợp vào cấu trúc response với
total,currentpage,limit, vàitems[].
- Tổng hợp vào cấu trúc response với
Parameters
| Tên | Kiểu | Bắt buộc | Mô tả |
|---|---|---|---|
product_id | integer | Có | ID sản phẩm (trong URL path). |
page | integer | Trang hiện tại (Mặc định: 1). | |
limit | integer | Số lượng bản ghi mỗi trang (Mặc định và tối đa: 50). | |
sort_by | string | Trường sắp xếp (id, date_created, date_modified, date_moderated). Mặc định: id. | |
sort_type | string | Hướng sắp xếp (ASC, DESC). Mặc định: DESC. |
Response Schema
HTTP 200 - JSON Object
{
"total": 50,
"currentpage": 1,
"limit": 50,
"items": [
{
"id": 1,
"product_id": 10,
"rating": 5,
"comment": "Sản phẩm chất lượng tốt",
"status": 3,
"date_created": 1600000000
// ... Xem thêm Product Review Object Schema
}
]
}Xem Product Review Object Schema
HTTP 422 - Validation Error
| Mã lỗi | Mô tả |
|---|---|
error_product_id_required | ID sản phẩm không hợp lệ (phải > 0). |
Error Codes
| HTTP | Mã lỗi | Mô tả |
|---|---|---|
| 404 | error_company_not_found_from_site_tenant_id | SiteTenantId không hợp lệ hoặc shop không còn hoạt động. |