Sản phẩm (Products)
Module Sản phẩm là nơi bạn định nghĩa các mặt hàng mà khách có thể đặt. Nhân viên chọn sản phẩm từ danh mục này khi tạo Đơn hàng trong Hội thoại.
Các Trường Thông Tin
| Trường | Bắt buộc | Mô tả |
|---|---|---|
| Tên | ✅ | Tên hiển thị (ví dụ: “Phở Bò”, “Khăn tắm phòng”) |
| Mô tả | ❌ | Chi tiết tùy chọn về sản phẩm |
| Giá | ✅ | Giá gốc (số thập phân, ví dụ: 12.50) |
| Giảm giá | ❌ | Giảm theo phần trăm (1–100%) hoặc số tiền cố định |
| Thứ tự | ❌ | Kiểm soát thứ tự hiển thị (số nhỏ hơn = hiển thị trước) |
| Nhãn (Label) | ❌ | Badge màu hiển thị trên thẻ sản phẩm trong shop của khách (ví dụ: “Hot”, “Mới”) |
| Đặc biệt (Special) | ❌ | Hiển thị sản phẩm trong carousel ở đầu trang shop của khách |
| Nổi bật (Featured) | ❌ | Hiển thị sản phẩm trong phần Nổi bật trên trang shop của khách |
| Tags | ❌ | Nhãn phân loại |
| Hình ảnh | ❌ | Nhiều ảnh; ảnh đầu tiên là ảnh bìa |
| Nhóm Tuỳ chọn | ❌ | Lựa chọn tùy chỉnh khi đặt hàng (ví dụ: Kích cỡ, Mức đường) |
| Trạng thái | ✅ | active — hiển thị; inactive — ẩn |
Hệ Thống Giảm Giá
EmberX hỗ trợ hai loại giảm giá có thể chọn cho từng sản phẩm:
| Loại | Cách hoạt động | Ví dụ |
|---|---|---|
| Không | Không giảm giá | Giá: $12.50 → Bán: $12.50 |
| Phần trăm | Giảm X% (1–100) | Giảm 20% $12.50 → $10.00 |
| Cố định | Giảm một khoản tiền cố định | Giảm $2 từ $12.50 → $10.50 |
Xem trước trực tiếp hiển thị giá bán đã tính trong khi bạn nhập.
Snapshot Giá Trong Đơn Hàng
Khi nhân viên thêm sản phẩm vào Đơn hàng, hệ thống lưu snapshot JSON về tên và giá sản phẩm tại thời điểm đó. Điều này có nghĩa là:
- Thay đổi giá sản phẩm sau này không ảnh hưởng đến đơn hàng cũ.
- Dữ liệu đơn hàng lịch sử luôn phản ánh số tiền khách thực sự được tính.
Tags
Tags là nhãn linh hoạt để phân loại sản phẩm (ví dụ: food, beverage, spa, housekeeping).
- Tags được chia sẻ toàn hệ thống (lưu trong bảng
Tag, categoryproduct). - Khi thêm sản phẩm, bạn có thể chọn tags có sẵn hoặc tạo mới ngay trong form.
- Tags cũng hỗ trợ hệ thống Định tuyến Feedback trong Cài đặt.
Hệ Thống Nhãn (Label Badge)
Mỗi sản phẩm có thể hiển thị nhãn badge màu sắc trên thẻ trong trang shop của khách, giúp khách nhận biết nhanh các mặt hàng đặc biệt hoặc theo mùa.
Các nhãn có sẵn
| Nhãn | Màu |
|---|---|
| (Không có) | — |
| Hot | 🔴 Đỏ |
| New | 🔵 Xanh dương |
| Must Try | 🟣 Tím |
| Popular | 🟠 Cam |
| Limited | 🌸 Hồng |
| Best Seller | 🟢 Xanh lá |
Bạn cũng có thể nhập nhãn tùy chỉnh và chọn màu bất kỳ bằng color picker. Badge sẽ được xem trước trực tiếp khi chỉnh sửa.
Cờ Nổi Bật (Promotional Flags)
Hai cờ boolean kiểm soát cách sản phẩm hiển thị trong giao diện shop của khách:
| Cờ | Tác dụng |
|---|---|
| Is Special | Sản phẩm xuất hiện trong carousel (cuộn ngang) ở đầu trang shop |
| Is Featured | Sản phẩm xuất hiện trong phần Nổi bật bên dưới carousel |
Nhóm Tuỳ Chọn (Product Options)
Nhóm Tuỳ chọn cho phép khách cá nhân hóa đơn hàng — ví dụ: chọn kích cỡ hoặc mức đường. Mỗi sản phẩm có thể có nhiều nhóm, mỗi nhóm có nhiều lựa chọn.
Cấu trúc
Sản phẩm└── Nhóm tuỳ chọn (ví dụ: "Kích cỡ") Bắt buộc: có ├── Lựa chọn: "Nhỏ" Điều chỉnh giá: −1.00 ├── Lựa chọn: "Vừa" Điều chỉnh giá: không đổi └── Lựa chọn: "Lớn" Điều chỉnh giá: +2.00└── Nhóm tuỳ chọn (ví dụ: "Mức đường") Bắt buộc: không ├── Lựa chọn: "100%" ├── Lựa chọn: "50%" └── Lựa chọn: "0%"Trường thông tin của Nhóm Tuỳ chọn
| Trường | Mô tả |
|---|---|
| Tên nhóm | Nhãn hiển thị với khách (ví dụ: “Kích cỡ”, “Mức đá”) |
| Bắt buộc | Nếu bật, khách phải chọn trước khi xác nhận đơn |
| Lựa chọn | Danh sách các mục có thể chọn trong nhóm |
Trường thông tin của Lựa chọn
| Trường | Mô tả |
|---|---|
| Tên lựa chọn | Nhãn của lựa chọn (ví dụ: “Lớn”, “Không đá”) |
| Điều chỉnh giá | Số tiền cộng hoặc trừ vào giá gốc. Để trống = không thay đổi. Ví dụ: +2.00 hoặc -1.00 |
Quản lý Nhóm Tuỳ chọn
Trong form sản phẩm, cuộn xuống phần Nhóm Tuỳ chọn:
- Nhấn Thêm nhóm để tạo nhóm tuỳ chỉnh mới.
- Nhập tên nhóm và bật/tắt Bắt buộc theo nhu cầu.
- Nhấn Thêm lựa chọn trong nhóm để thêm các mục.
- Nhấn 🗑️ để xóa nhóm hoặc lựa chọn cụ thể.
Hình Ảnh
Sản phẩm hỗ trợ nhiều hình ảnh. Thành phần tải lên chấp nhận các định dạng ảnh phổ biến. Ảnh đầu tiên tự động trở thành imageUrl (ảnh bìa) dùng trong xem trước đơn hàng.
Thêm Sản Phẩm
- Vào Sản phẩm trong thanh bên.
- Nhấn Thêm Sản phẩm (góc trên phải).
- Điền Tên và Giá (bắt buộc).
- Tùy chọn thiết lập Giảm giá, Nhãn, cờ Đặc biệt / Nổi bật.
- Thêm Nhóm Tuỳ chọn cho các mặt hàng có thể tùy chỉnh.
- Thêm Tags và Hình ảnh nếu cần.
- Đặt Thứ tự để kiểm soát vị trí hiển thị.
- Đặt Trạng thái
activeđể hiển thị ngay. - Nhấn Tạo Sản phẩm.
Vô Hiệu Hóa vs. Xóa
| Hành động | Kết quả |
|---|---|
| Chuyển sang Inactive | Ẩn sản phẩm khỏi đặt hàng; giữ nguyên lịch sử |
| Xóa | Xóa vĩnh viễn; snapshot đơn hàng cũ không bị ảnh hưởng |
Tiền Tệ
Giá sản phẩm được lưu theo tiền tệ cấu hình trong Cài đặt → Shop. Tiền tệ được hỗ trợ:
- USD ($) — mặc định
- VND (₫) — Việt Nam Đồng
Khi chuyển đổi tiền tệ, một hộp thoại hỏi có muốn chuyển đổi hàng loạt tất cả giá sản phẩm theo tỷ giá không.
Hiển Thị Shop (Enable Shop)
Toàn bộ tính năng shop và đặt hàng có thể bật/tắt từ Cài đặt → Shop → Enable Shop.
- Khi bật: nút menu và trang shop hiển thị với khách trong giao diện chat.
- Khi tắt: nút menu và trang shop bị ẩn khỏi khách — hữu ích khi ngoài giờ phục vụ hoặc đang bảo trì menu.
Xem Cài đặt để biết chi tiết cấu hình đầy đủ.