Tuỳ biến (Customization)Cài đặt bán hàng (Setting Sale)
Tab General (Sale)
Cấu hình bán hàng chung - promotion override, weighted barcode (mã cân), stock check mode, default shipping type, OMS order window fulfillment.
Tab sale của /setting-sale/general. Đây là tab default khi không có pathParams.tab.
Vị trí menu admin
Cài đặt > POS Settings > General. URL: /setting-sale/general/tab/sale.
Component: features/setting/sale/SettingSaleGeneral.tsx.
Section "Bán hàng" (sale_section)
| Field | Loại | Gate phụ |
|---|---|---|
disable_manual_promotion | Checkbox | - |
enable_pos_line_item_override | Checkbox | - - cho phép override giá/quantity từng line trong POS. |
pos_enable_order_window_fulfillment | Checkbox | OMS_ORDER_WINDOW - bật fulfillment qua Order Window cho POS. |
pos_check_out_of_stock | Checkbox hidden | Cố tình hidden (Row className="hidden") - giữ giá trị nhưng không cho user chỉnh. |
tag_default | <TagStringInput> | - - tags mặc định gắn vào đơn POS. |
| Section weighted barcode (con) | PIM_PRODUCT_WEIGHT |
Sub-section Weighted Barcode (gate PIM_PRODUCT_WEIGHT)
enable_weighted_barcode_itemCheckbox - bật parse mã barcode cân.- Khi checked, hiện thêm:
weighted_barcode_formatInput - placeholder20SSSSSGGGGGC, 2SSSSSGGGGGC.... ShowCount.- Bảng giải nghĩa các ký tự:
prefix,S(SKU code),G(gram weight),C(checksum) - lấy từ translationsetting:label.weighted_barcode_format_*.
→ Format này define cách POS đọc barcode cân từ scale.
Section "Tồn kho" (sale_section_inventory)
| Field | Loại | Options |
|---|---|---|
pos_stock_check_mode | <Radio.Group> | available (kiểm theo tồn kho có sẵn) / projected (kiểm theo tồn kho dự kiến - trừ pre-order). |
Section "Vận chuyển" (sale_section_shipping)
| Field | Loại | Options dynamic |
|---|---|---|
pos_default_shipping_type | <FormSelect> getValueProps={value => ({value: value ? +value : undefined})} | Order.SHIPPING_TYPE_DELIVERY (gate POS_SHIPPING_DELIVERY), INSTORE (gate POS_SHIPPING_INSTORE), PICKUP (gate POS_SHIPPING_PICKUP) - hiện theo gói. |
shippingTypeOptions build dynamic qua useMemo dựa trên hasFeature.
Submit
Save chung qua nút Lưu tại footer. Schema từ getSaleGeneralSchemas() + getSaleQrLinkSchemas().
SettingModel.buildSaveRequestItems sẽ pack key/value theo schema (boolean → string, number → string) trước khi gọi SettingRepository.saveItems.
Các lối đi từ trang
- Tab Receipt Print, POS Suggestion, Payment Method, Order Source, Kiosk trong cùng
/setting-sale/general. - Nếu cần tích hợp giá trên đơn cân, xem Setting Common Product cho UOM gram mapping.
Lưu ý - Lỗi thường gặp
- Field
pos_check_out_of_stockkhông hiện: cố tình hidden. Nếu cần dùng, tự update setting qua API. - Sub-section weighted barcode không hiện: thiếu
PIM_PRODUCT_WEIGHT. - Format weighted barcode sai: bảng dưới giải thích từng ký tự. Test thử quét vài barcode mẫu trước khi lưu.
- Shipping type dropdown trống: gói không bật
POS_SHIPPING_*nào - tenant không có tính năng. - Stock check mode khác nhau giữa POS và admin: setting chỉ áp dụng POS. Module Order admin có logic riêng.
Ai được xem và chỉnh?
- Người có quyền Cài đặt công ty / quản trị cài đặt mới mở và Lưu được
/setting-sale/general. - Save: cùng role.