xforge · tài liệu FE

FE: module brand — thương hiệu #

Phần chung (khởi tạo client, lỗi, danh sách, ngôn ngữ) ở tài liệu FE của Core: docs/fe/common.md (bản đọc: xforge-documentation, ADR-0102 của xforge-core). Sửa file này CÙNG PR khi đổi hành vi FE thấy được của module.

Thương hiệu có field dịch được (name, description, slug, metaTitle, metaDescription) và logo (logoFileId + logoFileInfo, file của module files). Quy ước field dịch được: phần chung §3.3.

CMS / admin (XforgeClient) #

Menu: key brand.brands (quyền brand.read).

ViệcMethodQuyền
Danh sáchlistBrands({ query })brand.read
Picker (ô chọn thương hiệu)listBrandOptions({ query }) → { id, code } + bản dịch đã chọnbrand.read
Chi tiếtgetBrand({ params: { id } })brand.read
TạocreateBrand({ body })brand.create
Sửa một phần / thay hếtupdateBrand / replaceBrandbrand.update
Một bản dịchaddBrandTranslation / updateBrandTranslation / deleteBrandTranslationbrand.update
Xoá (vào thùng rác)deleteBrand({ params: { id } })brand.delete
Thùng rác / khôi phụclistBrandTrash / restoreBrandbrand.restore
Xoá vĩnh viễndeleteBrand({ params: { id }, query: { force: "true" } })brand.delete + brand.hard_delete

Màn hình dựng sẵn (listMenu().screen khác null, docs/fe/cms.md §3.1 của Core): getMenuScreen({ params: { key: "brand.brands" } }) trả type: "crud" — CMS chung vẽ được mà không cần code riêng:

Storefront (StorefrontClient) #

Không cần đăng nhập. Chỉ thương hiệu đang bật VÀ có ít nhất một bản dịch.

Lỗi cần xử lý #

codeStatusFE nên
brand_not_found404trang 404 (storefront: slug không còn / thương hiệu ẩn)
brand_code_exists409báo ở ô code (cả khi khôi phục mà mã đã bị lấy)
brand_slug_exists409báo ở ô slug của đúng ngôn ngữ
brand_translation_lang_exists409ngôn ngữ đó đã có bản dịch → sửa thay vì thêm
brand_translation_not_found404tải lại thương hiệu
unsupported_language400ngôn ngữ không bật cho store (details.languages)
file_not_attachable400logo không phải file của store này
Nguồn: xforge-modules: modules/catalog/brand/FE.md