Skip to content

Sale Channels

Đào sâu tính năng. Định danh dịch vụ nằm trong Tổng quan Commerce; bảng trường trong Domain Model §3.8.

Một SaleChannel đại diện cho một bối cảnh điểm bán (ví dụ "Kênh offline", "Cửa hàng online") mà sản phẩm có thể được gán vào qua bản ghi join SaleChannelProduct. Mỗi merchant có thể có nhiều kênh.

REST Endpoints

Tham khảo đầy đủ: OpenAPI trực tiếp tại /v1/api/commerce/doc/openapi.json. CRUD chuẩn qua ControllerFactory; base path /sale-channels.

Không có route tùy biến để quản lý liên kết kênh-sản phẩm, phân tích kênh, hay gán sản phẩm hàng loạt. Sản phẩm được liên kết với kênh qua bản ghi SaleChannelProduct được tạo trong quá trình tạo product aggregate (POST /products/aggregate với saleChannelIds).

SaleChannelService

File: src/services/sale-channel.service.ts

MethodMục đích
findByIdentifier({ identifier, filter?, transaction? })Phân giải theo ID hoặc slug

Đó là method duy nhất. Không có createChannel(), addProductToChannel(), getChannelProducts(), getChannelPrice(), hay phân tích.

Truy cập theo phạm vi merchant

Với người dùng không phải admin, find()count() lọc sale channel theo các merchant ID mà người dùng có quyền truy cập qua chính sách Casbin. Người dùng admin/super-admin thấy tất cả kênh.

Phân giải identifier

GET /sale-channels/{id} phân giải bằng:

  1. Khớp ID trực tiếp
  2. Khớp trường slug

Xóa

Được xử lý bởi DeletionPolicyService.deleteSaleChannelById():

  • Xóa tất cả bản ghi SaleChannelProduct liên quan trước (cascade)
  • Rồi xóa hàng SaleChannel

Tạo kênh trong Onboarding

Sale channel thường được tạo như một phần của:

  • Onboarding merchant (POST /organizers/on-boarding) — tạo các kênh mặc định được chỉ định trong request
  • Tạo hàng loạt (POST /merchants/{id}/sale-channels/batch) — tạo nhiều kênh cho một merchant hiện có

Trang liên quan

TrangMô tả
Tổng quan CommerceĐịnh danh dịch vụ + catalog
Domain ModelBảng trường SaleChannel
ProductsTạo product aggregate với saleChannelIds

Proprietary and Confidential. Unauthorized copying, distribution, or use of this software is strictly prohibited.