Chuyển đến nội dung chính

getCartSimilarByProductIds

Lấy các sản phẩm "tương tự như giỏ hàng" dựa trên danh sách rõ ràng các productIds.

Mô tả

Phương thức này trả về các sản phẩm tương tự như danh sách rõ ràng các định danh sản phẩm được truyền trong thân yêu cầu (thay vì sử dụng giỏ hàng từ ngữ cảnh). Nó trả về một Promise mà khi giải quyết sẽ trả về một mảng các đối tượng IProductsEntity.

Blocks.getCartSimilarByProductIds(

marker*, body*

);

Sơ đồ tham số

Sơ đồ

marker(bắt buộc): string
Đánh dấu khối
ví dụ: "cart_similar_block"

body(bắt buộc): IBlockProductsLookup
Thân yêu cầu
ví dụ:

{
"productIds": [
1,
2
],
"langCode": "en_US"
}

body.productIds(bắt buộc): number[]
Các định danh sản phẩm để tra cứu.
ví dụ: [1, 2, 3]

body.langCode: string
Mã ngôn ngữ. Mặc định: "en_US".

body.limit: number
Số lượng sản phẩm tối đa để trả về.
ví dụ: 10

body.signPrice: string
Đánh dấu lưu trữ đơn hàng cho việc cố định giá. Nếu tham số này được thiết lập, giá sẽ được cố định trong một khoảng thời gian nhất định.

💲 signPrice khóa giá trả về trong một khoảng thời gian giới hạn — hãy đặt nó thành đánh dấu lưu trữ đơn hàng của bạn. Xem Cố định giá (signPrice).

Ví dụ

Ví dụ tối thiểu

const response = await Blocks.getCartSimilarByProductIds('cart_similar_block', {
productIds: [1, 2, 3],
});

Ví dụ với các thuộc tính

const response = await Blocks.getCartSimilarByProductIds('cart_similar_block', {
productIds: [1, 2, 3],
langCode: 'en_US',
limit: 10,
});

Ví dụ phản hồi

{
"items": [
{
"id": 2954,
"localizeInfos": {
"title": "Box"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"attributeSetIdentifier": "products",
"position": 1,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 51,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "product-name",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 51,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "usd",
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"img": {
"type": "image",
"value": [
{
"size": 742690,
"filename": "files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"contentType": "image/jpeg",
"previewLink": {
"default": [
"data:image/webp;base64,UklGRmwAAABXRUJQVlA4IGAAAADQAQCdASoQABAABUB8JbACdACZZ3P8AAD+wGsUXBs/r069WpdrcuaTNfVxqWIetuaIdIvOMkSp9iJRxE+KhA2YHbrVehhMRj/j5+DUdjWn1v5YtZ7vw0IgPi9R5vkAAAA=",
"https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.preview.default.jpeg"
]
},
"downloadLink": "https://your-project.oneentry.cloud/cloud-static/files/project/product/2954/image/48853cbf-4462-42c6-8b99-d14f721c21a2.jpeg",
"defaultPreview": "default"
}
],
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": true
}
},
"categories": [
"catalog"
],
"rating": {},
"isVisible": true,
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 582,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 582
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
},
{
"id": 2957,
"localizeInfos": {
"title": "Cosmo"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"attributeSetIdentifier": "products",
"position": 2,
"templateIdentifier": null,
"shortDescTemplateIdentifier": null,
"price": 150,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"product-name": {
"type": "string",
"value": "Cosmo",
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"price": {
"type": "integer",
"value": 150,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"currency_products": {
"type": "string",
"value": "USD",
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"img": {
"type": "image",
"value": "",
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": true
}
},
"categories": [
"catalog"
],
"rating": {},
"isVisible": true,
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 582,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 582
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
},
{
"id": 2960,
"localizeInfos": {
"title": "Percent split"
},
"statusIdentifier": "sale",
"statusLocalizeInfos": {
"title": "Sale"
},
"attributeSetIdentifier": "percent_split",
"position": 5,
"templateIdentifier": null,
"shortDescTemplateIdentifier": "product_preview",
"price": 180,
"additional": {
"prices": {
"min": 51,
"max": 180
}
},
"sku": null,
"isSync": true,
"attributeValues": {
"s0": {
"type": "float",
"value": 180,
"isIcon": false,
"position": 0,
"additionalFields": {},
"isProductPreview": false
},
"s1": {
"type": "float",
"value": 60,
"isIcon": false,
"position": 1,
"additionalFields": {},
"isProductPreview": false
},
"s2": {
"type": "float",
"value": 40,
"isIcon": false,
"position": 2,
"additionalFields": {},
"isProductPreview": false
},
"currency": {
"type": "string",
"value": "",
"isIcon": false,
"position": 3,
"additionalFields": {},
"isProductPreview": false
}
},
"categories": [
"catalog"
],
"rating": {},
"isVisible": true,
"moduleFormConfigs": [
{
"id": 12,
"formIdentifier": "review",
"moduleIdentifier": "catalog",
"isGlobal": false,
"isClosed": false,
"isModerate": false,
"viewOnlyMyData": false,
"commentOnlyMyData": false,
"entityIdentifiers": [
{
"id": "catalog",
"isNested": true
}
],
"formDataCount": 538,
"ratingCalculation": "average",
"allowHalfRatings": null,
"maxRatingScale": null,
"isAnonymous": null,
"allowRerating": null,
"isRating": null,
"entityFormDataCount": {
"2954": 538
},
"nestedEntityIdentifiers": [
"catalog"
],
"exceptionIds": []
}
],
"discountConfig": {}
},
"..."
],
"total": 5
}

Sơ đồ phản hồi

Sơ đồ: IProductsEntity[]

id: number
Định danh duy nhất.
ví dụ: 12345

localizeInfos: ILocalizeInfo
Tên của các sản phẩm, tính đến việc địa phương hóa.
ví dụ:

{}

statusIdentifier: string | null
Định danh trạng thái trang sản phẩm (có thể là null).
ví dụ: "in_stock"

statusLocalizeInfos: ILocalizeInfo
Tên trạng thái đã được địa phương hóa cho sản phẩm.
ví dụ:

{ "title": "Sale" }

attributeSetIdentifier: string | null
Tập hợp các id thuộc tính.
ví dụ: "set_12345"

position: number
Số thứ tự mục (để sắp xếp).
ví dụ: 1

price: number | null
Giá trị của giá trang sản phẩm lấy từ chỉ mục.
ví dụ: 150.00

additional: object
Giá trị bổ sung từ chỉ mục.
ví dụ:

{
"prices": {
"min": 5,
"max": 150
}
}

sku: string | null
SKU sản phẩm (Đơn vị lưu kho), có thể là null.
ví dụ: "SKU_12345"

isSync: boolean
Chỉ báo về việc lập chỉ mục trang.
ví dụ: true

attributeValues: IAttributeValues
Mảng các giá trị thuộc tính từ chỉ mục, được biểu diễn.
ví dụ:

[
{
"id": "color",
"value": "red"
}
]

categories: string[]
Các danh mục sản phẩm.
ví dụ:

[
1,
2,
3
]

isVisible: boolean
Dấu hiệu về tính khả thi của trang.
ví dụ: true

moduleFormConfigs: Array<IFormConfig>
Cấu hình biểu mẫu mô-đun (tùy chọn).

rating: IRating
Dữ liệu đánh giá.

isPositionLocked: boolean
Chỉ báo khóa vị trí sắp xếp (tùy chọn).
ví dụ: false

relatedIds: number[]
Các id của các trang sản phẩm liên quan.
ví dụ:

[
12345,
67890
]

paymentStages: unknown
Dữ liệu các giai đoạn thanh toán (có thể là null).
ví dụ: null

distance: number
Khoảng cách liên quan đến tìm kiếm vector (ngữ nghĩa). Chỉ có trong kết quả của tìm kiếm vector.
ví dụ: 0.42

discountConfig: Record<string, unknown>
Đối tượng cấu hình giảm giá.
ví dụ:

{}

templateIdentifier: string | null
Id người dùng của mẫu liên kết.
ví dụ: "template_12345"

shortDescTemplateIdentifier: string | null
Id người dùng của mẫu liên kết cho mô tả ngắn.
ví dụ: "short_desc_template_12345"

signedPrice: string
Giá đã ký của sản phẩm được lấy cùng với dữ liệu sản phẩm khi signPrice được thiết lập.
ví dụ: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."

productPages: IProductPageRef[]
Mảng các tham chiếu trang sản phẩm liên kết sản phẩm với các trang của nó.
ví dụ:

[
{
"id": 16,
"pageId": 4,
"productId": 15,
"positionId": 244,
"categoryPath": "products"
}
]

productPages.id: number
Định danh duy nhất của bản ghi liên kết sản phẩm với trang.
ví dụ: 16

productPages.pageId: number
Định danh của trang mà sản phẩm được liên kết.
ví dụ: 4

productPages.productId: number
Định danh của sản phẩm.
ví dụ: 15

productPages.positionId: number
Định danh vị trí sắp xếp trong trang.
ví dụ: 244

productPages.categoryPath: string
Đường dẫn danh mục của trang mà sản phẩm thuộc về.
ví dụ: "products"

blocks: string[]
Mảng các định danh khối.
ví dụ:

[
"block_12345",
"block_67890"
]

🔒 signedPrice là token đã ký mang giá đã khóa — hãy truyền lại khi bạn tạo đơn hàng. Xem Giá sản phẩm cố định (signedPrice).