📚 Mục lục sách

Ở bài trước, chủ tiệm Nuny Nail đã có trang quản lý để xác nhận, hủy và dời lịch hẹn. Nhưng mỗi lần làm vậy, khách không hề biết, trừ khi chủ tiệm tự nhắn Zalo. Còn khách đặt xong thì chỉ có mã lịch hẹn trên trang cảm ơn, đóng trình duyệt là quên mất mình đặt mấy giờ, với thợ nào.

Trong bài này, chúng ta sẽ gửi email cho khách mỗi khi lịch hẹn được tạo, xác nhận, dời hoặc hủy, báo cho chủ tiệm khi có lịch mới, và làm trang tra cứu để khách tự xem lại lịch hẹn của mình bằng mã lịch hẹn và số điện thoại.

Phần 1. Chuẩn bị gửi email

Bước 1: Tìm chức năng gửi email có sẵn

Prompt mẫu

"Dùng MCP Server, hãy tìm chức năng gửi email có sẵn trong EzyPlatform và các plugin đang cài (ví dụ mẫu email, cấu hình máy chủ gửi mail). CHƯA sửa file, CHƯA tạo dữ liệu. Cho biết: Mẫu email được tạo và sửa ở đâu trong admin, có chèn được thông tin lịch hẹn như tên khách, giờ, thợ không. Cần cấu hình gì để email gửi được và không rơi vào thư rác. Cách gửi email tự động khi lịch hẹn được tạo hoặc đổi trạng thái. Phần nào là suy đoán thì ghi rõ."

AI báo hiện trạng EzyMail và cách tạo, sửa mẫu email có chèn thông tin lịch hẹn
AI tìm chức năng gửi email có sẵn trong EzyMail

Làm theo hướng dẫn của AI để cấu hình địa chỉ gửi email của tiệm trong admin. Nên dùng email theo tên miền của tiệm, ví dụ hello@nunynail.vn, email sẽ ít bị rơi vào thư rác và khách dễ tin hơn.

Bước 2: Thêm ô email vào form đặt lịch

Prompt mẫu

"Hãy thêm ô Email vào bước nhập thông tin ở trang /dat-lich: Không bắt buộc, ghi chú 'Nhập email để nhận xác nhận lịch hẹn'. Kiểm tra đúng định dạng email trước khi gửi. Lưu email vào lịch hẹn theo docs/thiet-ke-du-lieu-dat-lich.md, cập nhật file thiết kế cho khớp. Sau khi xong, liệt kê các file đã thay đổi và dừng lại để tôi xem trước."

Phần 2. Mẫu email và thời điểm gửi

Prompt mẫu

"Hãy tạo các mẫu email bằng chức năng có sẵn đã tìm được, theo giọng văn trong brand-guide.md: Gửi khách khi vừa đặt lịch: 'Nuny Nail đã nhận lịch hẹn của bạn', trạng thái chờ xác nhận. Gửi khách khi chủ tiệm xác nhận. Gửi khách khi lịch được dời, ghi rõ giờ cũ và giờ mới. Gửi khách khi lịch bị hủy, kèm nút đặt lịch lại. Gửi chủ tiệm khi có lịch hẹn mới, kèm nút mở trang quản lý lịch hẹn. Mỗi email gửi khách gồm: mã lịch hẹn, ngày giờ, dịch vụ, thợ, tạm tính, địa chỉ tiệm, nút 'Xem lịch hẹn' dẫn tới trang tra cứu, số Zalo của tiệm. Yêu cầu: Email hiển thị tốt trên điện thoại, dùng màu và logo theo brand-guide.md. Chỉ gửi khi lịch hẹn có email. Gửi email lỗi thì vẫn lưu lịch hẹn bình thường, không báo lỗi cho khách. Không đưa admin_access_token hay thông tin bí mật vào code giao diện. Trước khi tạo mẫu email trong EzyPlatform, cho tôi xem nội dung và chờ tôi đồng ý. Sau khi xong, liệt kê các file đã thay đổi và dừng lại để tôi xem trước."

Mẫu thư nuny_booking_confirmed trong EzyMail với các biến bookingCode, dateText, staffName
Mẫu email xác nhận lịch hẹn trong EzyMail

Chủ tiệm có thể tự sửa câu chữ trong mẫu email ở admin, ví dụ thêm câu "Bạn vui lòng đến sớm 5 phút nhé", mà không cần sửa code.

Email xác nhận lịch hẹn của Nuny Nail khách nhận được trong Gmail
Email xác nhận lịch hẹn khách nhận được

Phần 3. Trang tra cứu lịch hẹn

Bước 1: Làm trang /tra-cuu-lich-hen

Trang tra cứu hiện tên và giờ hẹn của khách, nên phải tránh để người khác đoán mã và xem lịch của người khác:

Prompt mẫu

"Hãy tạo trang /tra-cuu-lich-hen: Khách nhập mã lịch hẹn và số điện thoại đã đặt. Phải đúng cả hai mới xem được. Nút 'Xem lịch hẹn' trong email mở thẳng lịch hẹn bằng một đường dẫn riêng khó đoán, không cần nhập lại. Hiện: mã lịch hẹn, trạng thái, ngày giờ, dịch vụ, thợ, tạm tính, địa chỉ tiệm. Số điện thoại hiện dạng che bớt, ví dụ 0856 *** 779. Khách tự hủy được nếu còn hơn 2 giờ trước giờ hẹn (phải chọn lý do và xác nhận lại). Muốn dời lịch thì có nút nhắn Zalo cho tiệm. Nhập sai thì chỉ báo 'Không tìm thấy lịch hẹn', không nói sai mã hay sai số điện thoại. Giới hạn số lần nhập sai liên tiếp. Thêm liên kết 'Tra cứu lịch hẹn' vào footer và trang cảm ơn sau khi đặt lịch. Yêu cầu: Kiểm tra ở phía máy chủ, không đưa admin_access_token hay thông tin bí mật vào code giao diện. Làm theo brand-guide.md, ưu tiên điện thoại. Sau khi xong, liệt kê các file đã thay đổi và dừng lại để tôi xem trước."

Trang Tra cứu lịch hẹn với ô mã lịch hẹn và số điện thoại đã đặt
Trang /tra-cuu-lich-hen

Bước 2: Thử nghiệm với trang tra cứu đặt lịch

Sau khi hoàn tất chỉnh sửa, bạn có thể thử nghiệm trên trang tra cứu, ví dụ như sau:

Nhập mã lịch hẹn và số điện thoại đã đặt vào trang tra cứu
Nhập mã lịch hẹn và số điện thoại
Chi tiết lịch hẹn với số điện thoại đã che bớt, nút nhắn Zalo để dời lịch và nút hủy lịch hẹn
Chi tiết lịch hẹn, số điện thoại đã được che bớt

Kết luận

Qua bài này, khách của Nuny Nail đã nhận được email mỗi khi lịch hẹn được tạo, xác nhận, dời hay hủy, chủ tiệm được báo ngay khi có lịch mới, và khách có thể tự xem lại hoặc hủy lịch trên trang tra cứu bằng mã lịch hẹn kèm số điện thoại hoặc bằng nút trong email.

Các mẫu email nằm trong admin EzyPlatform nên chủ tiệm tự sửa câu chữ được, còn trang tra cứu được bảo vệ để không ai đoán mã mà xem được lịch của người khác.

Ở bài tiếp theo, chúng ta sẽ nhắc lịch cho khách trước một ngày và nhận đặt cọc bằng mã VietQR, để giảm hẳn những lịch đặt rồi không đến.