Quy tắc tương thích
Không phải thiết bị nào cũng đi được với nhau: inverter hoà lưới thì không dùng pin lưu trữ, inverter hybrid thì tủ điện phải là loại khác. Quy tắc tương thích (khoá chéo) chặn khách và nhân viên ghép nhầm, theo kiểu “chọn A thì khoá / bắt buộc / giới hạn B”. Quy tắc khai theo danh mục sản phẩm, có ngoại lệ theo từng sản phẩm, và có mức áp riêng cho khách và cho nhân viên.
Bốn loại quy tắc
| Loại | Làm gì | Ví dụ (đúng như trên màn hình) |
|---|---|---|
| Loại trừ | Chọn sản phẩm thuộc danh mục A thì khoá danh mục / hạng mục / sản phẩm B. | Chọn thiết bị trong danh mục “Inverter hoà lưới” → khoá toàn bộ hạng mục “Pin lưu trữ”, hiện mờ kèm dòng giải thích ngắn. |
| Bắt buộc kèm | Chọn danh mục A thì bắt buộc chọn thêm một thiết bị thuộc B mới cho lưu báo giá. | Chọn “Inverter hybrid” → bắt buộc có tủ điện thuộc danh mục “Tủ điện hybrid”. |
| Giới hạn danh sách | Chọn danh mục A thì hạng mục B chỉ hiện sản phẩm thuộc danh mục C. | Chọn “Inverter hybrid” → hạng mục Tủ điện chỉ còn hiện danh mục “Tủ điện hybrid”. |
| Tự thay thế | Khai các cặp sản phẩm “từ → sang”, áp trong một hạng mục hoặc mọi hạng mục. Khi quy tắc kích hoạt, thiết bị “từ” đang có trong báo giá tự đổi sang thiết bị “sang” (giữ số lượng) ở trang khách và màn soạn báo giá. Thử trước ở mục Thiết bị sẽ tự đổi của Công cụ thử. | Kích hoạt khi chọn inverter hybrid; cặp: tủ điện hoà lưới → tủ điện hybrid tương ứng. |
Mở màn hình
Vào Báo giá → Quy tắc tương thích. Mặc định chỉ tài khoản quản trị viên thấy menu này. Site mẫu có sẵn hai quy tắc Loại trừ.
- Thêm quy tắc — mở form thêm quy tắc mới.
- Điều kiện để khoá chéo hoạt động đúng — quy tắc khai theo danh mục, và danh mục cha phủ cả danh mục con. Vì vậy danh mục sản phẩm phải tách rõ theo loại, ví dụ tách riêng “Inverter hoà lưới” và “Inverter hybrid”. Nếu mọi inverter đang nằm chung một danh mục thì cần sắp xếp lại danh mục trước khi khai quy tắc.
- Ưu tiên — số nhỏ chạy trước. Sửa số trong ô rồi bấm ra ngoài là lưu, có thông báo “Đã lưu thứ tự ưu tiên.”
- ↑ ↓ — đổi chỗ với quy tắc kề bên, lưu ngay. Plugin xếp lại các số ưu tiên đang có theo thứ tự mới; hai quy tắc cùng số 10 sẽ thành 10 và 11.
- Tên quy tắc — bấm để sửa. Quy tắc đang mâu thuẫn với quy tắc khác có nhãn đỏ Đang mâu thuẫn.
- Loại — Loại trừ, Bắt buộc kèm, Giới hạn danh sách hoặc Tự thay thế.
- Tác động — câu tóm tắt dễ đọc, ví dụ “Khi chọn danh mục Inverter hòa lưới → khoá hạng mục Pin lưu trữ”, kèm “Câu cảnh báo” khách sẽ thấy. Đối tượng đã bị xoá thì hiện “(chưa chọn / đã bị xoá)”.
- Mức áp — mức cho Khách và cho Nhân viên: Khoá cứng (đỏ) hoặc Cảnh báo mềm (vàng).
- Trạng thái — tích / bỏ tích là bật / tắt quy tắc ngay, có thông báo “Đã bật quy tắc …” hoặc “Đã tắt quy tắc …”.
- Sửa — mở form sửa quy tắc.
- Xoá — hỏi lại: “Quy tắc … sẽ bị xoá hẳn, không hoàn tác được. Muốn tạm ngưng thì tắt quy tắc thay vì xoá.”
Khi các quy tắc mâu thuẫn nhau
Ngay trên Danh sách quy tắc, plugin tự dò các quy tắc đang bật có điều kiện kích hoạt trùng nhau và hiện hộp vàng “Có N mâu thuẫn giữa các quy tắc đang bật — hãy sửa hoặc tắt bớt một quy tắc:”, mỗi dòng kèm liên kết tới quy tắc liên quan. Site mẫu không có mâu thuẫn nên hộp này không hiện. Bốn kiểu mâu thuẫn được dò:
- Quy tắc khoá chính danh mục / sản phẩm kích hoạt nó.
- Quy tắc Loại trừ khoá đúng thứ mà một quy tắc Bắt buộc kèm bắt phải chọn — không cấu hình nào thoả cả hai.
- Hai quy tắc Giới hạn danh sách cùng giới hạn một hạng mục nhưng không còn danh mục chung — hạng mục đó sẽ không còn sản phẩm nào.
- Hai quy tắc Tự thay thế thay cùng một sản phẩm bằng hai sản phẩm khác nhau — quy tắc ưu tiên cao hơn sẽ thắng.
Công cụ thử
Khối cuối trang, để kiểm tra trước khi cho quy tắc chạy thật: “nếu chọn danh mục X / sản phẩm Y thì điều gì xảy ra”. Chỉ xét các quy tắc đang bật; bấm Chạy thử không đổi quy tắc hay báo giá nào.
- Nếu chọn danh mục — một hoặc vài danh mục giả định khách đang chọn.
- và / hoặc sản phẩm — sản phẩm hoặc biến thể cụ thể. Sản phẩm thử được xét ở mọi hạng mục nó thuộc về, nên quy tắc giới hạn / tự thay thế theo hạng mục cũng hiện kết quả. Muốn thử quy tắc tự thay thế thì chọn thêm sản phẩm “từ” ở ô này.
- Người đang chọn — Khách (mặc định) hoặc Nhân viên, để xem đúng mức áp của từng đối tượng.
- Chạy thử — chưa chọn gì mà bấm thì báo “Hãy chọn ít nhất một danh mục hoặc sản phẩm để thử.”
- Quy tắc kích hoạt — các quy tắc chạy với lựa chọn này. Không quy tắc nào chạy thì hiện “Không quy tắc nào kích hoạt với lựa chọn này — mọi hạng mục vẫn chọn tự do.”
- Bị khoá — thứ bị khoá kèm mức và câu cảnh báo. Tuỳ loại quy tắc còn có các mục Bắt buộc chọn kèm (ghi “Đã có trong lựa chọn thử” hoặc “Còn thiếu”), Hạng mục bị giới hạn và Thiết bị sẽ tự đổi.
Thêm hoặc sửa quy tắc
Bấm Thêm quy tắc, hoặc Sửa ở một dòng. Ảnh dưới là quy tắc Inverter hoà lưới khoá pin lưu trữ của site mẫu. Đổi Loại quy tắc thì các dòng phía dưới tự đổi theo loại.
- Điều kiện để khoá chéo hoạt động đúng — nhắc lại ở form, xem mục trên.
- Tên quy tắc Bắt buộc — tên nội bộ để nhận ra quy tắc, ví dụ “Hoà lưới không dùng pin lưu trữ”. Tên cũng nằm trong câu cảnh báo mặc định nếu bạn để trống ô Câu cảnh báo.
- Loại quy tắc — bấm một trong bốn thẻ. Quy tắc mới mặc định là Loại trừ.
- Kích hoạt khi chọn — Danh mục sản phẩm (mặc định) hoặc Sản phẩm cụ thể.
- Danh mục kích hoạt: chọn một sản phẩm thuộc bất kỳ danh mục nào ở đây (kể cả danh mục con) là quy tắc chạy.
- Sản phẩm kích hoạt: dùng khi chỉ một vài sản phẩm cụ thể (hoặc biến thể) mới kích hoạt quy tắc.
- Khoá đối tượng (loại Loại trừ) / Bắt buộc chọn kèm (loại Bắt buộc kèm) — đối tượng là Danh mục sản phẩm, Hạng mục báo giá (mặc định) hoặc Sản phẩm cụ thể, rồi chọn ở ô tương ứng (Danh mục đối tượng / Hạng mục đối tượng / Sản phẩm đối tượng).
- Loại trừ: các đối tượng này hiện mờ kèm câu cảnh báo, không chọn được (khoá cứng) hoặc chọn được nhưng có cảnh báo (cảnh báo mềm).
- Bắt buộc kèm: phải có ít nhất một thiết bị thuộc các đối tượng này thì báo giá mới lưu được (khoá cứng) hoặc chỉ nhắc (cảnh báo mềm).
Khi chọn loại Giới hạn danh sách
- Hạng mục bị giới hạn Bắt buộc — ví dụ Tủ điện.
- Chỉ còn hiện sản phẩm thuộc danh mục Bắt buộc — ví dụ “Tủ điện hybrid”. Sản phẩm ngoài các danh mục này bị ẩn khỏi hạng mục.
Khi chọn loại Tự thay thế
- Chỉ áp trong hạng mục (tuỳ chọn) — để trống là áp ở mọi hạng mục.
- Cặp thay thế Bắt buộc — mỗi dòng một cặp: cột Từ sản phẩm (đang chọn) và cột Sang sản phẩm (tự đổi thành). Hai bên phải khác nhau; một sản phẩm “từ” chỉ nhận một cặp. Bấm × để bỏ một cặp.
- + Thêm cặp — thêm một dòng cặp mới.
Plugin ghi: “Khi quy tắc kích hoạt, thiết bị ở cột trái đang có trong báo giá tự đổi sang thiết bị ở cột phải (giữ số lượng), kèm thông báo cho người dùng — ở trang khách và màn soạn báo giá. Thiết bị ở cột phải hết hàng / tắt báo giá thì không đổi, báo lý do. Người dùng chọn lại thiết bị cũ thì hệ thống không đổi lần nữa: mức "Khoá cứng" không cho lưu, "Cảnh báo mềm" vẫn lưu kèm cảnh báo.”
Kiểm tra quy tắc tự thay thế bằng Công cụ thử: chọn danh mục kích hoạt và thêm sản phẩm “từ” ở ô sản phẩm, kết quả hiện ở mục Thiết bị sẽ tự đổi.
Ngoại lệ, mức áp và câu cảnh báo
- Ngoại lệ theo sản phẩm — sản phẩm trong danh sách này không kích hoạt quy tắc và cũng không bị quy tắc khoá hay tự đổi. Dùng cho trường hợp đặc biệt mà không phải tách danh mục mới.
- Mức độ áp dụng — chọn riêng Với khách (trang báo giá công khai) và Với nhân viên (màn soạn báo giá). Khoá cứng: không cho chọn / không cho lưu. Cảnh báo mềm: vẫn chọn được nhưng hiện cảnh báo. Quy tắc mới mặc định khách khoá cứng, nhân viên cảnh báo mềm — đúng như gợi ý trên màn hình, để nhân viên xử lý được trường hợp đặc biệt.
- Câu cảnh báo — câu hiện cho người dùng khi quy tắc chạy, tối đa 500 ký tự. Ví dụ “Inverter hoà lưới không dùng được pin lưu trữ — vui lòng chọn inverter hybrid nếu cần lưu trữ điện”. Để trống thì dùng câu mặc định theo loại, ví dụ Loại trừ: “Không dùng được với lựa chọn hiện tại (tên quy tắc).”
- Ưu tiên — mặc định 10, số nhỏ chạy trước.
- Trạng thái — ô Bật quy tắc (áp dụng ngay khi lưu), mặc định tích.
- Lưu quy tắc — lưu và về danh sách, thông báo “Đã lưu quy tắc …”. Nếu quy tắc vừa lưu mâu thuẫn với quy tắc khác thì có thêm thông báo vàng “Cần xem lại: …”.
- Huỷ — về danh sách, không lưu.
Mức “Với nhân viên” chỉ áp ở màn soạn báo giá trong trang quản trị. Nhân viên đăng nhập rồi mở trang lên báo giá ngoài web vẫn gặp đúng mức của khách.
Quy tắc chạy ở đâu
| Nơi | Điều xảy ra |
|---|---|
| Ô hạng mục trên trang khách | Hạng mục bị Loại trừ hiện biểu tượng ổ khoá và câu cảnh báo; khoá cứng thì các nút Chọn, + Thêm / Sửa, Đổi của hạng mục đó bị khoá. Dòng thiết bị vi phạm có câu cảnh báo ngay dưới dòng. |
| Cửa sổ chọn sản phẩm (trang khách và màn soạn báo giá) | Loại trừ theo danh mục / sản phẩm, khoá cứng: sản phẩm đó bị ẩn khỏi cửa sổ, đầu cửa sổ có dòng “Khoá chéo: …”; cảnh báo mềm: sản phẩm vẫn hiện, thẻ sản phẩm có câu cảnh báo. Mở cửa sổ của hạng mục bị Loại trừ: đầu cửa sổ có dòng “Khoá chéo: …” (cứng) hoặc “Lưu ý: …” (mềm). Giới hạn danh sách: khoá cứng thì hạng mục chỉ còn sản phẩm thuộc danh mục được phép; cảnh báo mềm thì sản phẩm ngoài danh mục vẫn hiện, kèm câu cảnh báo. |
| Tự thay thế (trang khách và màn soạn báo giá) | Trang khách: đổi dòng ngay khi quy tắc kích hoạt, giữ số lượng, hiện hộp “Thiết bị đã tự đổi theo quy tắc tương thích” với câu “Đã thay “X” bằng “Y” theo quy tắc “…”.” Màn soạn: báo giá đang soạn đổi dòng (giữ số lượng và cờ in; bỏ giá tự gõ, chiết khấu riêng của dòng cũ) và kể lại trong khối “Thiết bị tự đổi theo quy tắc tương thích:”; mở một báo giá đã lưu thì không tự sửa, dòng còn chờ đổi chỉ hiện cảnh báo. Thiết bị “sang” hết hàng, tắt báo giá, chưa đăng bán, còn phải chọn phiên bản hoặc đã xoá thì không đổi; dòng đó chỉ là cảnh báo, không chặn lưu (kể cả quy tắc khoá cứng) — khách đọc “… thiết bị thay thế đang tạm chưa có — nhân viên sẽ tư vấn thiết bị phù hợp”, nhân viên đọc tên thiết bị “sang” kèm lý do. Đầu màn Quy tắc tương thích và trang Kiểm tra hệ thống (mục Quy tắc tự thay thế) báo quy tắc nào đang có thiết bị thay thế không dùng được. Một dòng khớp nhiều quy tắc thì theo quy tắc có ưu tiên cao nhất. |
| Khi lưu | Máy chủ kiểm lại toàn bộ, không tự sửa dòng nào. Vi phạm khoá cứng thì không lưu được và báo đúng câu cảnh báo; vi phạm cảnh báo mềm thì vẫn lưu. Dòng còn chờ tự đổi (ví dụ người dùng chọn lại thiết bị cũ) cũng tính là vi phạm, câu báo dạng ““X” không dùng được với lựa chọn hiện tại — cần đổi sang “Y” (…).” Riêng dòng chờ đổi mà thiết bị “sang” không dùng được (hết hàng, tắt báo giá, đã xoá…) luôn chỉ là cảnh báo mềm, không chặn lưu. Ở màn soạn báo giá, câu cảnh báo mềm nằm trong hộp “Lưu ý khoá chéo / tình trạng hàng:”. |
| Kiểm tra combo | Combo vi phạm quy tắc — kể cả combo còn thiết bị sẽ bị quy tắc Tự thay thế đổi — có dòng Lỗi (khoá cứng với khách) hoặc Lưu ý (cảnh báo mềm) ở cột Kiểm tra của Hệ & combo. Combo vẫn hiện cho khách. |
Kiểm tra đã đúng chưa
- Không có hộp vàng mâu thuẫn ở đầu danh sách, không quy tắc nào mang nhãn Đang mâu thuẫn.
- Chạy Công cụ thử với danh mục kích hoạt, lần lượt chọn Khách và Nhân viên: mục Bị khoá / Bắt buộc chọn kèm / Hạng mục bị giới hạn / Thiết bị sẽ tự đổi hiện đúng thứ bạn muốn, đúng mức.
- Quy tắc Tự thay thế: mở trang lên báo giá, chọn thiết bị “từ” rồi chọn thiết bị kích hoạt — dòng “từ” đổi sang thiết bị “sang”, số lượng giữ nguyên, có hộp báo đã thay.
- Mở trang lên báo giá ngoài web, chọn một thiết bị thuộc danh mục kích hoạt: hạng mục bị khoá hiện ổ khoá và câu cảnh báo, cửa sổ chọn không còn sản phẩm bị khoá.
- Mở cột Kiểm tra ở danh sách combo của từng hệ: không combo nào vướng quy tắc vừa khai.
Lỗi thường gặp
| Hiện tượng | Cách xử lý |
|---|---|
| Quy tắc khoá luôn cả thiết bị không liên quan | Danh mục kích hoạt hoặc danh mục đối tượng đang chứa lẫn nhiều loại. Tách danh mục theo loại, hoặc thêm sản phẩm đặc biệt vào Ngoại lệ theo sản phẩm. |
| Quy tắc không chạy | Quy tắc đang tắt, hoặc thiết bị khách chọn không nằm trong danh mục kích hoạt (kể cả danh mục con). Kiểm bằng Công cụ thử. |
| Nhân viên lưu được báo giá vi phạm, khách thì không | Đúng như cài: mức với nhân viên đang là Cảnh báo mềm. Muốn chặn cả nhân viên thì đổi sang Khoá cứng. |
| Lưu báo “Hãy chọn danh mục hoặc sản phẩm kích hoạt quy tắc.” | Ô Danh mục kích hoạt / Sản phẩm kích hoạt đang trống. |
| Lưu báo “Hãy chọn đối tượng bị khoá / bắt buộc (danh mục, hạng mục hoặc sản phẩm).” | Loại Loại trừ / Bắt buộc kèm chưa chọn đối tượng. Nếu đối tượng cũ đã bị xoá (cột Tác động ghi “#số” hoặc “(chưa chọn / đã bị xoá)”), chọn lại đối tượng mới. |
| Lưu báo “Quy tắc giới hạn cần hạng mục bị giới hạn và danh mục được phép hiện.” | Điền đủ cả hai ô của dòng Giới hạn danh sách. |
| Lưu báo “Quy tắc tự thay thế cần ít nhất một cặp sản phẩm "từ → sang".” | Thêm ít nhất một cặp có đủ hai sản phẩm khác nhau. |
| “Chưa tự đổi được “X” sang “Y” theo quy tắc “…” vì “Y” …” (màn soạn) / “… vì thiết bị thay thế đang tạm chưa có — bạn vẫn lưu được báo giá, nhân viên sẽ tư vấn thiết bị phù hợp.” (trang khách) | Thiết bị “sang” đang hết hàng, đang tắt báo giá, chưa đăng bán, có nhiều phiên bản (cần chọn một phiên bản cụ thể) hoặc không còn tồn tại. Khách vẫn lưu được báo giá, dòng chỉ hiện cảnh báo. Sửa cặp thay thế, hoặc bổ sung hàng / bật báo giá cho thiết bị đó — khối vàng Có thiết bị thay thế không dùng được ở đầu màn Quy tắc tương thích liệt kê quy tắc cần sửa. |
| Chọn lại thiết bị cũ thì không lưu được | Đúng như plugin ghi: người dùng chọn lại thiết bị cũ thì hệ thống không đổi lần nữa; mức Khoá cứng không cho lưu, Cảnh báo mềm vẫn lưu kèm cảnh báo. |
| Bấm ↑ ↓ báo “Danh sách quy tắc vừa thay đổi ở nơi khác…” | Có người vừa thêm / xoá quy tắc. Tải lại trang rồi làm lại. |
Làm theo từng bước có ví dụ: Khoá thiết bị không hợp nhau thế nào?.