Chuyển tới nội dung chính

Hướng dẫn quản lý Menu nhà hàng


Tổng quan

Hệ thống quản lý Menu nhà hàng cho phép cấu hình và quản lý thực đơn cho từng nhà hàng, khu vực và gán sản phẩm với giá cụ thể cho từng menu.

Tính năng chính:

✅ Quản lý nhiều nhà hàng

✅ Phân chia khu vực trong nhà hàng

✅ Tạo menu theo nhà hàng và khu vực

✅ Gán sản phẩm vào menu với giá riêng

✅ Copy menu nhanh chóng

✅ Lọc và tìm kiếm menu theo nhiều tiêu chí

✅ Ghi log tất cả thao tác (Action Log)

Luồng hoạt động:

Nhà hàng

Khu vực nhà hàng

Menu (thuộc nhà hàng + khu vực)

Sản phẩm (với giá riêng cho từng menu)

Các bước cấu hình

BƯỚC 1: Tạo Nhà hàng

1.1. Truy cập quản lý nhà hàng

  • Đăng nhập Admin
  • Menu: Cấu hình > Nhà hàng

1.2. Thêm nhà hàng mới

Form nhập liệu:

┌─── Thông tin nhà hàng ──────────────────┐
│ Mã nhà hàng*: NHA01 │
│ Tên nhà hàng*: Nhà hàng ThinkSoft │
│ Loại*: 1 (Restaurant) │
│ Logo URL: https://example.com/... │
└─────────────────────────────────────────┘

Giải thích các trường:

TrườngBắt buộcMô tảVí dụ
Mã nhà hàngMã định danh (5 ký tự, unique)NHA01, NHA02
Tên nhà hàngTên hiển thịNhà hàng ThinkSoft
LoạiLoại hình nhà hàng1 (Restaurant)
Logo URLĐường dẫn logohttps://...

1.3. Quy tắc mã nhà hàng

✅ Đúng:
NHA01, NHA02, CAFE1, REST1

❌ Sai:
nha01 → Phải viết HOA
NHA 01 → Không được có khoảng trắng
Nhà-hàng → Có dấu
NHAHANG01 → Quá 5 ký tự

Format chuẩn: [A-Z0-9]{1,5} (tối đa 5 ký tự, CHỮ HOA, KHÔNG DẤU)


BƯỚC 2: Tạo Khu vực nhà hàng

2.1. Truy cập quản lý khu vực

  • Menu: Cấu hình > Khu vực nhà hàng

2.2. Thêm khu vực mới

Form nhập liệu:

┌─── Thông tin khu vực ───────────────────┐
│ Nhà hàng*: [Dropdown] Nhà hàng A │
│ Tên khu vực*: Tầng 1 │
└─────────────────────────────────────────┘

Giải thích:

TrườngBắt buộcMô tảVí dụ
Nhà hàngChọn nhà hàngNhà hàng ThinkSoft
Tên khu vựcTên khu vựcTầng 1, Khu VIP, Sân vườn

2.3. Ví dụ phân chia khu vực

Nhà hàng ThinkSoft:

📍 Tầng 1
- Phục vụ 30 bàn
- Menu: Đồ uống + Món ăn nhẹ

📍 Tầng 2
- Phục vụ 20 bàn
- Menu: Món chính + Buffet

📍 Khu VIP
- Phục vụ 5 phòng riêng
- Menu: Cao cấp + Đặc biệt

📍 Sân vườn
- Phục vụ 15 bàn ngoài trời
- Menu: BBQ + Đồ uống

BƯỚC 3: Tạo Menu

3.1. Truy cập quản lý menu

  • Menu: Nhà hàng > Menu nhà hàng

3.2. Thêm menu mới

Form nhập liệu:

┌─── Thông tin menu ──────────────────────┐
│ Nhà hàng*: [Dropdown] Nhà hàng A │
│ Khu vực*: [Dropdown] Tầng 1 │
│ Tên menu*: Menu Đồ uống sáng │
│ Mô tả: Thực đơn đồ uống phục vụ │
│ buổi sáng 6h-10h │
└─────────────────────────────────────────┘

Giải thích các trường:

TrườngBắt buộcMô tảVí dụ
Nhà hàngChọn nhà hàngNhà hàng ThinkSoft
Khu vựcChọn khu vực (thuộc nhà hàng)Tầng 1
Tên menuTên thực đơn (tối đa 255 ký tự)Menu Đồ uống sáng
Mô tảMô tả chi tiết (tối đa 500 ký tự)Phục vụ buổi sáng...

3.3. Lưu ý quan trọng

⚠️ Khu vực phải thuộc về nhà hàng

Ví dụ:

  • Nhà hàng A → Chỉ hiển thị khu vực của Nhà hàng A
  • Nhà hàng B → Chỉ hiển thị khu vực của Nhà hàng B

Quy trình chọn:

  1. Chọn Nhà hàng trước
  2. Dropdown Khu vực tự động load khu vực của nhà hàng đó
  3. Chọn Khu vực
  4. Nhập Tên menuMô tả

3.4. Ví dụ cấu trúc menu

Nhà hàng ThinkSoft - Tầng 1:

📋 Menu Đồ uống sáng (6h-10h)
📋 Menu Đồ uống trưa (11h-14h)
📋 Menu Đồ uống chiều (15h-18h)
📋 Menu Món ăn nhẹ

Nhà hàng ThinkSoft - Tầng 2:

📋 Menu Buffet sáng
📋 Menu Buffet trưa
📋 Menu Món chính
📋 Menu Ăn chay

Nhà hàng ThinkSoft - Khu VIP:

📋 Menu Cao cấp
📋 Menu Đặc biệt
📋 Menu Set Combo

Quản lý sản phẩm trong menu

PHƯƠNG PHÁP 1: Gán sản phẩm từ danh sách menu

Bước 1: Mở giao diện gán sản phẩm

  1. Vào Nhà hàng > Menu nhà hàng
  2. Tìm menu cần gán sản phẩm
  3. Click nút "Quản lý sản phẩm" (icon danh sách màu xanh)

Bước 2: Chọn sản phẩm

Giao diện gán sản phẩm:

┌─── Gán sản phẩm vào menu ───────────────────────────┐
│ │
│ Menu: Menu Đồ uống sáng │
│ Nhà hàng: Nhà hàng ThinkSoft │
│ │
├── DANH SÁCH SẢN PHẨM ──────┬── SẢN PHẨM TRONG MENU ─┤
│ │ │
│ [ ] Cà phê đen đá │ Trà sữa trân châu │
│ 25,000đ │ 35,000đ │
│ │ │
│ [ ] Cà phê sữa │ Trà đào cam sả │
│ 28,000đ │ 40,000đ │
│ │ │
│ [x] Bạc xỉu │ │
│ 30,000đ │ │
│ │ │
│ [x] Trà chanh │ │
│ 20,000đ │ │
│ │ │
│ [Thêm vào >>] [<< Xóa] │ │
│ │
└─────────────────────────────────────────────────────┘

Bước 3: Thiết lập giá

Chỉnh sửa giá sản phẩm:

┌─── Sản phẩm trong menu ─────────────────┐
│ │
│ Cà phê đen đá │
│ Giá gốc: 25,000đ │
│ Giá menu: [28,000] đ [Sửa] │
│ │
│ Bạc xỉu │
│ Giá gốc: 30,000đ │
│ Giá menu: [32,000] đ [Sửa] │
│ │
│ Trà chanh │
│ Giá gốc: 20,000đ │
│ Giá menu: [20,000] đ [Sửa] │
│ │
└─────────────────────────────────────────┘

Tính năng:

  • ✅ Giá menu có thể khác giá gốc
  • ✅ Sửa giá trực tiếp trên danh sách
  • ✅ Lưu tất cả cùng lúc

Bước 4: Lưu thay đổi

Click nút "LƯU TẤT CẢ" để lưu:

  • Danh sách sản phẩm đã chọn
  • Giá của từng sản phẩm trong menu

PHƯƠNG PHÁP 2: Gán sản phẩm khi tạo/sửa sản phẩm

Khi tạo sản phẩm mới

  1. Vào Sản phẩm > Danh sách sản phẩm
  2. Click "THÊM MỚI"
  3. Điền thông tin sản phẩm
  4. Tick vào "Bán trực tiếp"

Form bán trực tiếp:

┌─── Bán trực tiếp ──────────────────────┐
│ ☑ Bán trực tiếp │
│ │
│ Nhà hàng*: [Dropdown] Nhà hàng A │
│ Thực đơn*: [Dropdown] Menu đồ uống │
│ Giá tiền*: 28,000 đ │
│ │
│ * Giá có thể khác giá bán mặc định │
└────────────────────────────────────────┘
  1. Click "THÊM MỚI"

Kết quả:

  • ✅ Sản phẩm được tạo thành công
  • ✅ Sản phẩm tự động thêm vào menu đã chọn
  • ✅ Với giá đã thiết lập

Lưu ý:

  • ⚠️ Khi lưu sản phẩm mới, TẤT CẢ sản phẩm cũ sẽ bị XÓA
  • ✅ Phải gửi TOÀN BỘ danh sách sản phẩm (cũ + mới)
  • ✅ Giá phải là chuỗi số hoặc số nguyên

Tính năng Copy Menu

Khi nào sử dụng Copy Menu?

Nên dùng khi:

  • Tạo menu tương tự cho khu vực khác
  • Tạo menu cho nhà hàng mới với sản phẩm giống nhau
  • Tạo menu phiên bản mới (ví dụ: mùa hè, mùa đông)
  • Backup menu hiện tại

Không nên dùng khi:

  • Menu hoàn toàn khác nhau
  • Ít sản phẩm (tạo mới nhanh hơn)

Cách sử dụng Copy Menu

Bước 1: Chọn menu nguồn

  1. Vào Nhà hàng > Menu nhà hàng
  2. Tìm menu cần copy
  3. Click nút "Copy menu" (icon copy màu tím)

Bước 2: Điền thông tin menu mới

Form Copy Menu:

┌─── Copy menu ───────────────────────────────┐
│ │
│ Copy từ menu: Menu Đồ uống sáng │
│ Nhà hàng nguồn: Nhà hàng ThinkSoft │
│ │
│ ─────────────────────────────────────────── │
│ │
│ THÔNG TIN MENU MỚI │
│ │
│ Nhà hàng*: [Dropdown] Nhà hàng B │
│ Khu vực*: [Dropdown] Tầng 1 │
│ Tên menu*: Menu Đồ uống sáng │
│ Mô tả: Copy từ menu gốc │
│ │
│ ☑ Copy cả sản phẩm │
│ │
│ [Hủy] [Copy Menu] │
│ │
└─────────────────────────────────────────────┘

Giải thích:

TrườngMô tảLưu ý
Copy từ menuMenu nguồn (tự động)Không thể thay đổi
Nhà hàngChọn nhà hàng đíchCó thể khác nhà hàng nguồn
Khu vựcChọn khu vực đíchPhải thuộc nhà hàng đã chọn
Tên menuTên cho menu mớiNên đặt khác menu nguồn
Mô tảMô tả menu mớiTùy chọn
Copy cả sản phẩmCheckboxNếu tick: copy cả sản phẩm + giá

Bước 3: Xác nhận và hoàn tất

Click "Copy Menu"

Kết quả:

Nếu tick "Copy cả sản phẩm":

✅ Menu mới được tạo
✅ Sản phẩm được copy
✅ Giá sản phẩm được giữ nguyên

Nếu KHÔNG tick "Copy cả sản phẩm":

✅ Menu mới được tạo
⚪ Không có sản phẩm (menu rỗng)

Ví dụ Copy Menu

Trường hợp 1: Copy menu sang khu vực khác (cùng nhà hàng)

Menu nguồn:

Nhà hàng: Nhà hàng ThinkSoft
Khu vực: Tầng 1
Menu: Menu Đồ uống sáng
Sản phẩm: 15 sản phẩm

Copy sang:

Nhà hàng: Nhà hàng ThinkSoft (giống)
Khu vực: Tầng 2 (khác)
Menu: Menu Đồ uống sáng - Tầng 2
☑ Copy cả sản phẩm

Kết quả:

  • Menu mới tại Tầng 2
  • 15 sản phẩm với giá giống hệt menu gốc

Trường hợp 2: Copy menu sang nhà hàng khác

Menu nguồn:

Nhà hàng: Nhà hàng A
Khu vực: Tầng 1
Menu: Menu Đồ ăn chính
Sản phẩm: 25 sản phẩm

Copy sang:

Nhà hàng: Nhà hàng B (khác)
Khu vực: Tầng 1
Menu: Menu Đồ ăn chính
☑ Copy cả sản phẩm

Kết quả:

  • Menu mới tại Nhà hàng B
  • 25 sản phẩm với giá giống menu gốc

Lưu ý:

💡 Sau khi copy, có thể điều chỉnh giá sản phẩm theo từng nhà hàng


Trường hợp 3: Copy menu để tạo phiên bản mới

Menu nguồn:

Nhà hàng: Nhà hàng ThinkSoft
Khu vực: Tầng 1
Menu: Menu Mùa hè 2024
Sản phẩm: 20 sản phẩm

Copy sang:

Nhà hàng: Nhà hàng ThinkSoft (giống)
Khu vực: Tầng 1 (giống)
Menu: Menu Mùa đông 2024
☐ KHÔNG copy sản phẩm

Kết quả:

  • Menu mới "Menu Mùa đông 2024"
  • Không có sản phẩm (để thêm sản phẩm mới cho mùa đông)

Ví dụ thực tế

VÍ DỤ 1: Thiết lập hệ thống menu cho nhà hàng mới

Bước 1: Tạo nhà hàng

Mã: CAFE1
Tên: Cafe ThinkSoft
Loại: 1

Bước 2: Tạo khu vực

Khu vực 1:
- Nhà hàng: Cafe ThinkSoft
- Tên: Tầng 1 - Trong nhà

Khu vực 2:
- Nhà hàng: Cafe ThinkSoft
- Tên: Tầng 2 - VIP

Khu vực 3:
- Nhà hàng: Cafe ThinkSoft
- Tên: Sân vườn

Bước 3: Tạo menu cho từng khu vực

Tầng 1 - Trong nhà:

Menu 1:
- Tên: Menu Đồ uống cơ bản
- Mô tả: Các loại đồ uống phổ biến
- Sản phẩm: Cà phê, Trà, Sinh tố

Menu 2:
- Tên: Menu Món ăn nhẹ
- Mô tả: Bánh ngọt, Sandwich
- Sản phẩm: Bánh mì, Bánh ngọt, Salad

Tầng 2 - VIP:

Menu 1:
- Tên: Menu Cao cấp
- Mô tả: Đồ uống và món ăn đặc biệt
- Sản phẩm: Các món cao cấp với giá cao hơn

Sân vườn:

Menu 1:
- Tên: Menu Ngoài trời
- Mô tả: BBQ và đồ uống giải khát
- Sản phẩm: Đồ nướng, Bia, Nước giải khát

Bước 4: Gán sản phẩm và thiết lập giá

Menu Đồ uống cơ bản (Tầng 1):

┌─────────────────────────┬──────────┬──────────┐
│ Sản phẩm │ Giá gốc │ Giá menu │
├─────────────────────────┼──────────┼──────────┤
│ Cà phê đen đá │ 25,000 │ 25,000 │
│ Cà phê sữa │ 28,000 │ 28,000 │
│ Bạc xỉu │ 30,000 │ 30,000 │
│ Trà đào cam sả │ 35,000 │ 35,000 │
│ Trà sữa trân châu │ 30,000 │ 30,000 │
└─────────────────────────┴──────────┴──────────┘

Menu Cao cấp (Tầng 2 - VIP):

┌─────────────────────────┬──────────┬──────────┐
│ Sản phẩm │ Giá gốc │ Giá menu │
├─────────────────────────┼──────────┼──────────┤
│ Cà phê đen đá │ 25,000 │ 35,000 │ ⬆️ +40%
│ Cà phê sữa │ 28,000 │ 38,000 │ ⬆️ +36%
│ Bạc xỉu │ 30,000 │ 40,000 │ ⬆️ +33%
│ Trà đào cam sả │ 35,000 │ 45,000 │ ⬆️ +29%
│ Trà sữa trân châu │ 30,000 │ 40,000 │ ⬆️ +33%
└─────────────────────────┴──────────┴──────────┘

💡 Giá menu VIP cao hơn 30-40% so với Tầng 1


VÍ DỤ 2: Sử dụng Copy Menu cho chi nhánh mới

Tình huống:

  • Nhà hàng A đã có menu đầy đủ
  • Mở chi nhánh mới: Nhà hàng B
  • Muốn dùng menu tương tự nhưng điều chỉnh giá

Giải pháp:

Bước 1: Tạo Nhà hàng B và khu vực

Nhà hàng: Nhà hàng B - Chi nhánh 2
Khu vực:
- Tầng 1
- Tầng 2

Bước 2: Copy menu từ Nhà hàng A

Menu nguồn (Nhà hàng A - Tầng 1):
- Menu Đồ uống sáng (15 sản phẩm)

Copy sang (Nhà hàng B - Tầng 1):
- Tên: Menu Đồ uống sáng
- ☑ Copy cả sản phẩm

Bước 3: Điều chỉnh giá cho Nhà hàng B

Vào "Quản lý sản phẩm" của menu mới

Sản phẩm: Cà phê đen đá
Giá cũ (từ Nhà hàng A): 28,000đ
Giá mới (Nhà hàng B): 25,000đ ⬇️ Giảm 10%

Sản phẩm: Trà sữa trân châu
Giá cũ: 35,000đ
Giá mới: 32,000đ ⬇️ Giảm 9%

→ Lưu tất cả

VÍ DỤ 3: Tạo menu theo giờ phục vụ

Thiết lập menu cho các khung giờ khác nhau:

Nhà hàng: ThinkSoft Restaurant Khu vực: Tầng 1

📋 Menu Sáng (6h-10h)
├── Cà phê phin (25,000đ)
├── Bánh mì (15,000đ)
├── Phở bò (45,000đ)
└── Bún bò (40,000đ)

📋 Menu Trưa (11h-14h)
├── Cơm văn phòng (45,000đ)
├── Phở (50,000đ)
├── Bún (45,000đ)
└── Nước ngọt (15,000đ)

📋 Menu Chiều (15h-18h)
├── Trà sữa (30,000đ)
├── Sinh tố (35,000đ)
├── Bánh ngọt (25,000đ)
└── Snack (20,000đ)

📋 Menu Tối (18h-22h)
├── Set lẩu (199,000đ)
├── Set nướng (249,000đ)
├── Bia (25,000đ)
└── Rượu vang (450,000đ)

Cách triển khai:

  1. Tạo 4 menu riêng biệt cho cùng 1 khu vực
  2. Mỗi menu có sản phẩm phù hợp với khung giờ
  3. Giá có thể khác nhau theo khung giờ

Ví dụ sản phẩm xuất hiện nhiều menu:

Cà phê đen:
- Menu Sáng: 20,000đ (giờ vàng)
- Menu Trưa: 25,000đ (giá thường)
- Menu Chiều: 25,000đ (giá thường)
- Menu Tối: 28,000đ (giá cao điểm)

Lưu ý quan trọng

⚠️ Quy tắc bắt buộc

1. Về Nhà hàng:

✅ Mã nhà hàng:
- Tối đa 5 ký tự
- CHỮ HOA, KHÔNG DẤU
- Unique (không trùng)
- Không khoảng trắng

❌ Tránh:
- nha01 (chữ thường)
- NHA 01 (có khoảng trắng)
- Nhà-hàng-01 (có dấu, quá dài)

2. Về Khu vực:

⚠️ Khu vực phải thuộc về một nhà hàng
⚠️ Không thể chuyển khu vực sang nhà hàng khác
⚠️ Xóa nhà hàng → Xóa tất cả khu vực

3. Về Menu:

⚠️ Menu phải chọn đúng khu vực của nhà hàng
⚠️ Tên menu tối đa 255 ký tự
⚠️ Một khu vực có thể có nhiều menu
⚠️ Xóa menu → Xóa tất cả sản phẩm trong menu

4. Về Sản phẩm trong menu:

✅ Giá menu có thể khác giá gốc
✅ Một sản phẩm có thể nằm trong nhiều menu
✅ Giá có thể khác nhau ở mỗi menu

⚠️ Khi lưu sản phẩm mới → Xóa hết sản phẩm cũ
⚠️ Phải gửi TOÀN BỘ danh sách sản phẩm

💡 Mẹo hay

1. Đặt tên menu rõ ràng:

✅ Tốt:
- Menu Đồ uống sáng
- Menu Buffet trưa - Cuối tuần
- Menu Cao cấp - Tầng VIP
- Menu BBQ - Sân vườn

❌ Tránh:
- Menu 1
- Menu A
- Thực đơn

2. Tổ chức menu hợp lý:

📍 Theo thời gian:
- Menu Sáng (6h-10h)
- Menu Trưa (11h-14h)
- Menu Chiều (15h-18h)
- Menu Tối (18h-22h)

📍 Theo loại món:
- Menu Đồ uống
- Menu Món chính
- Menu Tráng miệng
- Menu Đặc biệt

📍 Theo sự kiện:
- Menu Buffet
- Menu Tiệc
- Menu Happy Hour
- Menu Combo

3. Chiến lược giá:

💰 Giá theo khu vực:
Tầng 1 (thường): Giá chuẩn (100%)
Tầng 2 (VIP): Giá +30%
Sân vườn: Giá +20%

💰 Giá theo thời gian:
Sáng (6h-10h): Giá -10% (giờ vàng)
Trưa (11h-14h): Giá chuẩn
Chiều (15h-18h): Giá -15% (happy hour)
Tối (18h-22h): Giá +10%

💰 Giá theo menu:
Menu thường: Giá chuẩn
Menu Buffet: Giá trọn gói
Menu Combo: Giá giảm 15-20%

4. Sử dụng Copy Menu hiệu quả:

✅ Nên copy khi:
- Mở chi nhánh mới (copy toàn bộ)
- Tạo menu cho khu vực mới (copy + điều chỉnh)
- Tạo menu mùa vụ (copy + thêm/bớt món)

⚪ Không copy sản phẩm khi:
- Menu hoàn toàn khác
- Chỉ muốn cấu trúc menu rỗng

5. Quản lý hiệu quả:

📊 Sử dụng bộ lọc:
- Lọc theo nhà hàng
- Lọc theo khu vực
- Lọc theo trạng thái
- Tìm kiếm theo tên

📈 Theo dõi số liệu:
- Số sản phẩm trong mỗi menu
- Menu nào có nhiều sản phẩm nhất
- Menu nào chưa có sản phẩm

🔍 Checklist trước khi lưu

Khi tạo Nhà hàng:

✓ Mã nhà hàng: 5 ký tự, CHỮ HOA, không trùng
✓ Tên nhà hàng: Rõ ràng, dễ nhớ
✓ Logo URL: Hợp lệ (nếu có)

Khi tạo Khu vực:

✓ Đã chọn nhà hàng
✓ Tên khu vực: Rõ ràng, dễ phân biệt

Khi tạo Menu:

✓ Đã chọn nhà hàng
✓ Khu vực thuộc về nhà hàng đó
✓ Tên menu: Rõ ràng (tối đa 255 ký tự)
✓ Mô tả: Đầy đủ (nếu có)

Khi gán sản phẩm:

✓ Đã chọn đủ sản phẩm cần thiết
✓ Giá của từng sản phẩm hợp lý
✓ Kiểm tra lại danh sách trước khi lưu
✓ Nhớ: Lưu mới sẽ XÓA hết sản phẩm cũ

Khi Copy Menu:

✓ Menu nguồn đúng
✓ Nhà hàng đích đúng
✓ Khu vực đích thuộc nhà hàng đích
✓ Tên menu mới khác tên menu cũ
✓ Đã chọn "Copy sản phẩm" (nếu cần)

📊 Action Log

Hệ thống tự động ghi log mọi thao tác:

Các hành động được ghi log:

✅ CREATE restaurant → Tạo nhà hàng
✅ UPDATE restaurant → Sửa nhà hàng
✅ DELETE restaurant → Vô hiệu hóa nhà hàng

✅ CREATE restaurant_area → Tạo khu vực
✅ UPDATE restaurant_area → Sửa khu vực
✅ DELETE restaurant_area → Vô hiệu hóa khu vực

✅ CREATE restaurant_menu → Tạo menu
✅ UPDATE restaurant_menu → Sửa menu
✅ DELETE restaurant_menu → Vô hiệu hóa menu

✅ COPY restaurant_menu → Copy menu
✅ SAVE products to menu → Gán sản phẩm

Thông tin log bao gồm:

  • Hành động thực hiện
  • Bảng dữ liệu
  • Dữ liệu trước/sau thay đổi
  • Người thực hiện (username)
  • Thời gian thực hiện
  • ID bản ghi

Troubleshooting

Lỗi thường gặp

1. "Khu vực không thuộc nhà hàng được chọn"

Nguyên nhân: Chọn khu vực không thuộc về nhà hàng đã chọn

Giải pháp:

1. Kiểm tra lại nhà hàng đã chọn
2. Chỉ chọn khu vực thuộc nhà hàng đó
3. Hoặc tạo khu vực mới cho nhà hàng

Ví dụ:

❌ Sai:
Nhà hàng: Nhà hàng A
Khu vực: Tầng 1 (của Nhà hàng B) → LỖI

✅ Đúng:
Nhà hàng: Nhà hàng A
Khu vực: Tầng 1 (của Nhà hàng A) → OK

2. "Mã nhà hàng đã tồn tại"

Nguyên nhân: Mã nhà hàng trùng với nhà hàng khác

Giải pháp:

Thay đổi mã nhà hàng
Ví dụ:
NHA01 → NHA02
CAFE1 → CAFE2
REST1 → REST2

3. "Tên menu quá dài"

Nguyên nhân: Tên menu vượt quá 255 ký tự

Giải pháp:

Rút ngắn tên menu

❌ Quá dài:
"Menu Đồ uống và Món ăn nhẹ phục vụ buổi sáng từ 6 giờ đến 10 giờ sáng dành cho khách hàng tại khu vực Tầng 1 của Nhà hàng ThinkSoft"

✅ Ngắn gọn:
"Menu Sáng - Tầng 1"
hoặc
"Menu Đồ uống sáng (6h-10h)"

4. "Không thể xóa menu"

Nguyên nhân: Menu đang có sản phẩm hoặc có ràng buộc khác

Giải pháp:

1. Xóa sản phẩm trong menu trước
hoặc
2. Vô hiệu hóa (INACTIVE) thay vì xóa

Lưu ý: Hệ thống chỉ VÔ HIỆU HÓA, không XÓA VĨNH VIỄN

5. "Sản phẩm biến mất sau khi lưu"

Nguyên nhân: Khi lưu sản phẩm mới, hệ thống XÓA HẾT sản phẩm cũ

Giải pháp:

⚠️ Quan trọng:
Khi lưu sản phẩm, phải gửi TOÀN BỘ danh sách

Ví dụ:
Menu có: A, B, C (3 sản phẩm)
Muốn thêm D

❌ Sai:
Chỉ gửi: D
→ Kết quả: Chỉ còn D (mất A, B, C)

✅ Đúng:
Gửi: A, B, C, D
→ Kết quả: A, B, C, D (đầy đủ)

6. "Dropdown khu vực trống"

Nguyên nhân: Chưa chọn nhà hàng hoặc nhà hàng chưa có khu vực

Giải pháp:

1. Chọn nhà hàng trước
2. Nếu dropdown vẫn trống:
→ Tạo khu vực cho nhà hàng đó

7. "Giá sản phẩm không hợp lệ"

Nguyên nhân: Giá không phải số hoặc âm

Giải pháp:

✅ Hợp lệ:
25000
28000
35000

❌ Không hợp lệ:
-25000 → Số âm
25,000 → Có dấu phẩy
ABC → Không phải số

🔧 Xử lý tình huống đặc biệt

Tình huống 1: Muốn đổi menu sang nhà hàng khác

Vấn đề: Không thể chuyển menu sang nhà hàng khác trực tiếp

Giải pháp:

1. Copy menu sang nhà hàng mới
2. Vô hiệu hóa menu cũ

Tình huống 2: Muốn hợp nhất 2 menu

Vấn đề: Có 2 menu tương tự, muốn gộp thành 1

Giải pháp:

1. Chọn menu chính (giữ lại)
2. Gán thêm sản phẩm từ menu phụ vào menu chính
3. Vô hiệu hóa menu phụ

Tình huống 3: Cập nhật giá hàng loạt

Vấn đề: Muốn tăng/giảm giá tất cả sản phẩm trong menu

Giải pháp:

1. Vào "Quản lý sản phẩm"
2. Sửa giá từng sản phẩm
3. Lưu tất cả

Lưu ý: Hiện tại chưa hỗ trợ tăng/giảm giá hàng loạt

Tài liệu liên quan