Customer Portal & My Home — Tổng quan
Customer Portal (cổng khách hàng) là mặt tiền customer-facing của Tuke: landing theo site, booking, đặt chỗ và quản lý subscription. My Home là trang home (staff + portal): header navigation + xử lý timezone hiển thị.
Portal chạy app mode riêng khỏi Admin Portal: bootstrap chỉ gọi API phù hợp mode. Mọi dữ liệu cho khách scope theo account đã đăng nhập và read-only — portal không mutation enrollment, billing, invoice, payment hay credit note.
Hình dung nhanh
Cổng khách hàng bao phủ những gì?
| Mảng | Một câu |
|---|---|
| Bootstrap scope | Staff-context API chỉ ở Admin Mode; caller account ngoài Admin Mode; identity/timezone hydrate mọi mode. |
| Layout | Content width theo Booking UI max width; full-width chỉ qua exception tường minh. |
| My Home header | Title trái, menu Calendar/Timetable/My Profile phải, theo quyền/cấu hình BusinessUnit. |
| Local time | Giờ theo ServiceAreaId (Local vs MultiZone) và User.TimezoneIdentifier. |
| Timezone prompt | Prompt lần đầu theo session cho staff My Home; session popup cho portal. |
| Sidebar quick-select | Đổi timezone ngay từ drawer, auto-save, không cần confirm. |
| My Subscriptions | Quản lý subscription account-scoped, read-only, route /{curl}/enrollments. |
| My Bookings section | Section "My Subscriptions" theo tab trạng thái trong My Bookings. |
| Share link | Link booking/program dùng origin Customer Portal, không rò admin context. |
| Site contact | Email/phone/address dùng icon trên Booking UI + landing site card. |
Đọc theo thứ tự
Liên quan
- Booking — flow booking customer-facing, Program Details Page, checkout.
- Subscription — enrollment, My Subscriptions, subscription manager.
- Master Data — site/account/attendee scope,
BusinessUnitPermission. - Finance — invoice/payment chỉ đọc ở portal.