Store Builder

Ứng dụng Đặt lịch

Nhận lịch hẹn hay đặt phòng qua biểu mẫu — khung giờ, số chỗ và ngày nghỉ do máy chủ kiểm, người đặt thành khách hàng, và một sổ lịch để xác nhận, huỷ, đánh dấu không đến.

Quản lý → Ứng dụng có thẻ Đặt lịch trong kệ Tích hợp sẵn:

"Nhận đặt lịch hẹn qua biểu mẫu — ngày và khung giờ được kiểm ở máy chủ, người đặt lưu thành khách hàng."

Cái làm app này khác một biểu mẫu Liên hệ có thêm ô ngày nằm ở nửa sau câu đó. Trang đặt lịch là một trang web: ai cũng sửa được nó trong trình duyệt của họ, gõ một ngày đã qua, một khung giờ không có, hay gửi hai lần. Nên mọi luật của một cuốn sổ hẹn — chỗ còn hay hết, ngày nghỉ, đặt trùng — không nằm trên trang mà nằm ở máy chủ, và được kiểm lại ở từng lượt gửi, kể cả lượt gửi từ một trang đã bị sửa.

Biểu mẫu đặt lịch vẫn là một biểu mẫu

Không có màn hình dựng riêng. Kéo Biểu mẫu lên trang như thường (xem Biểu mẫu), và trong Mẫu dựng sẵn có hai mẫu thuộc app này:

Đặt lịch hẹn"Ngày hẹn và khung giờ kèm số điện thoại — khách chọn, bạn xác nhận."

Đặt phòng nghỉ"Nhận / trả phòng, loại phòng và số khách — tính phòng trống theo từng đêm."

Chọn một trong hai khi cửa hàng chưa cài app, trình dựng hỏi "Cài app Đặt lịch?" và cài ngay tại chỗ khi bạn bấm Đồng ý, cài app — một lần cho cả cửa hàng, không phải mỗi biểu mẫu.

Mẫu Đặt lịch hẹn gồm họ tên và số điện thoại (bắt buộc), một ô lịch Ngày hẹn chỉ nhận từ hôm nay trở đi, ô chọn Khung giờ với ba khung rộng — Sáng (8:00–12:00), Chiều (13:00–17:00), Tối (18:00–21:00) — và ô ghi chú. Ba khung đó là vốn từ ban đầu, không phải giờ mở cửa của ai: sửa chúng thành các suất thật của bạn, thêm bớt tuỳ ý. Máy chủ đếm chỗ theo đúng danh sách bạn để lại, và một khung không có trong danh sách bị từ chối ("Khung giờ không hợp lệ") — khách không tự mở được suất mới.

Máy chủ tìm ô ngày và ô khung giờ thế nào

Bạn dựng lại biểu mẫu thoải mái, chỉ cần giữ một hình dáng: ô lịch đầu tiên là ngày, ô chọn (select hoặc radio) đầu tiên là khung giờ. Đó là thứ hai mẫu để sẵn, và cũng là thứ tự tự nhiên khi dựng tay.

Từ hình dáng đó suy ra hai biến thể có ích:

  • Không có ô khung giờ → đếm chỗ theo cả ngày. Một studio chụp ảnh nhận hai ca mỗi ngày không cần bịa ra khung giờ: bỏ ô chọn đi, đặt Số lượt tối đa mỗi khung giờ là 2, và con số đó thành sức chứa của ngày.
  • Hai ô lịch → biểu mẫu đọc một khoảng, và đây là mẫu Đặt phòng nghỉ: ô lịch thứ nhất là ngày nhận, thứ hai là ngày trả, ô chọn là loại phòng — mỗi loại phòng là một "khung" có sức chứa riêng. Phòng được tính là bận theo từng đêm từ ngày nhận đến trước ngày trả: khách trả phòng sáng nào thì tối đó phòng đã trống cho người khác.

Không có ô lịch nào thì không có luật nào để áp — biểu mẫu chạy như một biểu mẫu Liên hệ.

Quy tắc đặt lịch

Mở biểu mẫu trong trình dựng, thẻ Cài đặt, nhóm Quy tắc đặt lịch. Mọi ô để 0 là không áp luật, nên một biểu mẫu chưa động vào nhận tất cả.

  • Số lượt tối đa mỗi khung giờ — bấy nhiêu lượt cùng một ngày và một khung là kín. Khách thấy: "Khung giờ này đã kín, vui lòng chọn khung giờ khác". Trên mẫu đặt phòng, đây là số phòng của mỗi loại, tính cho từng đêm.
  • Số lượt tối đa mỗi ngày — trần cho cả ngày, cộng mọi khung. Một nhà hàng ngồi mười bàn mỗi ca nhưng chỉ phục vụ bốn mươi khách một tối là trường hợp của ô này; nó chỉ có nghĩa khi có ô khung giờ.
  • Cần đặt trước (ngày) — 1 là không nhận hôm nay, 2 là sớm nhất ngày kia. Tính theo ngày, không theo giờ, vì ô ngày không có đồng hồ.
  • Chỉ nhận trước tối đa (ngày) — 30 là khách chỉ đặt được trong 30 ngày tới.
  • Số lịch đang chờ tối đa của một khách — đếm các lịch từ hôm nay trở đi của cùng một số điện thoại (không có thì theo email). Chặn một số giữ chỗ cả tháng.
  • Cho phép một khách đặt trùng khung — mặc định tắt: cùng số điện thoại đặt đúng một ngày + một khung lần thứ hai bị từ chối ("Bạn đã đặt lịch này rồi"), gần như luôn là bấm đúp hoặc gửi lại. Đặt hai khung khác nhau trong ngày vẫn được. Bật lên khi một số điện thoại thật sự cần vài chỗ trong cùng một suất — hai suất cắt tóc cho hai mẹ con.
  • Ngày nghỉ — những ngày cụ thể: nghỉ lễ, Tết, tuần sửa sang. Khách thấy "Ngày này cửa hàng nghỉ, vui lòng chọn ngày khác". Nghỉ cố định theo thứ trong tuần thì không đặt ở đây mà đặt ngay trên ô ngày, nhóm Ngày nhận trong bảng thuộc tính — hai chỗ, hai câu hỏi khác nhau. Trên mẫu đặt phòng, một ngày nghỉ chặn mọi kỳ nghỉ ngủ qua ngày đó; trả phòng đúng sáng hôm đó thì vẫn được.
  • Ở tối thiểu / tối đa (đêm) — chỉ mẫu hai ô ngày mới đọc: homestay chỉ nhận cuối tuần từ hai đêm, và chiều ngược lại cho chỗ không giữ phòng nửa năm.

Hai điều máy chủ làm mà không có ô nào để bật:

  • Ngày đã qua bị từ chối ngay từ ô lịch — mẫu để sẵn chỉ nhận từ hôm nay, và luật đó cũng được kiểm ở máy chủ như mọi luật khác.
  • Lượt gửi bị xếp là spam không chiếm chỗ. Nó vẫn được lưu để bạn xem, nhưng không làm một khung "kín" và không được biết mình vấp luật nào.

Sổ lịch hẹn

Quản lý → Ứng dụng → Đặt lịch là cuốn sổ. Nó không dựng gì, không cài đặt gì — trả lời một câu hỏi mỗi sáng: sắp tới có những ai?

Trên cùng là ba con số: Lịch hôm nay, Chờ xác nhận, 7 ngày tới. Con số giữa là việc cần làm — mỗi lượt đặt mới vào sổ ở trạng thái Hợp lệ, và Chờ xác nhận đếm những lượt chưa ai gọi lại; nó nổi lên khi khác 0 và lặng đi khi bằng 0.

Dưới đó, sổ xếp theo ngày, Hôm nay rồi Ngày mai được gọi tên. Mỗi dòng: khung giờ (hoặc ngày trả phòng), tên khách, số điện thoại — bấm là gọi được trên điện thoại, đó là việc kế tiếp của gần như mọi dòng. Có nhiều hơn một biểu mẫu đặt lịch thì có ô lọc theo biểu mẫu, và số liệu lọc theo cùng.

Vòng đời của một lượt đặt, đọc từ các nút trên dòng:

  • Xác nhận — bạn đã gọi và khách sẽ tới. Dòng đeo nhãn Đã xác nhận; quét sổ là biết ai đã được gọi.
  • Huỷ lịch — hỏi lại trước khi làm, vì nó mở chỗ đó ra cho người khác đặt. Bản ghi vẫn còn, nhãn Đã huỷ.
  • Không đến — chỉ xuất hiện khi ngày hẹn đã tới, vì "không đến" là chuyện của quá khứ và một lịch tương lai không nên bị gắn nhầm. Vì thế sổ có thêm mục 7 ngày vừa qua: bạn biết khách không tới sau khi dòng đã rời khỏi danh sách sắp tới.
  • Khôi phục — trên một dòng đã huỷ hoặc không đến. Không cần hỏi lại vì chỉ lấy lại thứ từng có, nhưng máy chủ đếm lại trước khi trả chỗ: nếu trong lúc lịch bị huỷ đã có người khác đặt vào đúng khung đó, khôi phục bị từ chối và sổ nói thẳng — "Không khôi phục được — chỗ này đã có khách khác đặt trong lúc lịch bị huỷ."

Luật đằng sau bốn nút đó là một câu: Hợp lệ và Đã xác nhận giữ chỗ; Đã huỷ và Không đến không giữ. Mọi phép đếm sức chứa ở trên đều đếm đúng hai trạng thái đầu.

Cùng dữ liệu ấy nằm trong Phản hồi của biểu mẫu và Quản lý → Biểu mẫu — cột Trạng thái mang bốn giá trị đó, lọc và xuất Excel được — nên sổ này không phải một bản sao mà là một cách đọc khác của cùng bảng.

Người đặt là khách hàng

Nhóm Liên hệ trên biểu mẫu (họ tên, điện thoại, email) tự khớp vào hồ sơ khách như mọi biểu mẫu khác: mỗi lượt đặt mới tạo hoặc gắn vào một người trong Quản lý → Khách hàng (xem Khách hàng). Đó cũng là "một khách" mà các luật ở trên nhắc tới: nhận dạng theo chữ số của số điện thoại, nên "090 123 4567""0901234567" là một người.

Gỡ app

Gỡ bị từ chối khi cửa hàng còn biểu mẫu đặt lịch — một biểu mẫu vẫn nhận lượt đặt sau lưng một màn hình bảo rằng app đã gỡ là chuyện không nên có. Xoá hoặc đổi các biểu mẫu đó trước, rồi mới gỡ.

Cập nhật 5/9/2026