SRS_Đặt sân & Lịch
Giới thiệu & tài liệu liên quan
Đặc tả yêu cầu phần mềm cho module Đặt sân & Lịch (OW-02). Xem thêm Tổng quan module · UC · UI.
1/ Luồng Sequence
2/ Luồng di chuyển màn hình
3/ Đặc tả chi tiết theo màn hình
MH1: Trang Đặt sân & Lịch
Mô tả màn hình: Trang điều phối tập trung gồm thanh bộ lọc (Chi nhánh / Loại sân / Thời gian), 4 card thống kê nhanh và lịch Gantt theo ngày với trục giờ và danh sách sân; slot mang màu theo trạng thái.
Sự kiện 1 — Lọc & tải lịch Gantt
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Quản lý ca · Thu ngân | Chọn bộ lọc Chi nhánh / Loại sân / Thời gian (Ngày/Tháng/Năm) |
| 2 | Booking Server | Hợp lệ: Trả về 4 card thống kê, Gantt và danh sách chờ duyệt khớp bộ lọc |
Không hợp lệ — Sự kiện 1
| STT | Trường hợp | Thông báo | Vị trí · Loại | Xử lý |
|---|---|---|---|---|
| 1 | Không có sân/booking khớp bộ lọc | "Không có dữ liệu phù hợp. Vui lòng đổi bộ lọc." | Vùng Gantt · cảnh báo | Hiện trạng thái trống |
| 2 | Mất kết nối realtime | "Mất kết nối, đang đồng bộ lại lịch." | Đầu trang · cảnh báo | Tự kết nối lại |
Sự kiện 2 — Nhấn slot trên Gantt
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Quản lý ca · Thu ngân | Nhấn một slot có booking |
| 2 | Booking Client | Mở popup chi tiết (MH2) ngay dưới ô |
Không hợp lệ — Sự kiện 2
| STT | Trường hợp | Thông báo | Vị trí · Loại | Xử lý |
|---|---|---|---|---|
| 1 | Nhấn slot khoá (xám) | "Sân đang bảo trì kèm lý do." | Tooltip tại slot · thông tin | Chỉ hiển thị, không có nút thao tác |
| 2 | Nhấn slot trống | "Không có popup thao tác." | Tại slot · thông tin | Tạo booking thực hiện ở Bán hàng POS |
MH2: Popup chi tiết booking
Mô tả màn hình: Popup inline hiện ngay dưới slot, hiển thị thông tin khách & booking và các nút thao tác theo trạng thái (Check-in / Gia hạn / Ghi chú / Huỷ).
Sự kiện 1 — Check-in & gia hạn
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Thu ngân · Quản lý ca | Với booking đã đặt, nhấn [Check-in] |
| 2 | Booking Server | Chuyển slot sang "Đang chơi" |
| 3 | Thu ngân · Quản lý ca | Chọn gia hạn +30 phút / +1 giờ; xem giá gia hạn theo bảng giá |
| 4 | Booking Server | Hợp lệ: Lưu, slot Gantt kéo dài theo thời gian gia hạn |
Không hợp lệ — Sự kiện 1
| STT | Trường hợp | Thông báo | Vị trí · Loại | Xử lý |
|---|---|---|---|---|
| 1 | Khung giờ liền sau đã có booking | "Không thể gia hạn: khung giờ đã có booking khác." | Trong popup · lỗi | Chặn gia hạn, gợi ý đổi sân |
| 2 | Người dùng chỉ có quyền xem | "Bạn không có quyền thao tác booking này." | Trong popup · cảnh báo | Ẩn nút, chỉ cho xem |
Sự kiện 2 — Huỷ & ghi chú
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Thu ngân · Quản lý ca | Nhấn [Huỷ] (mở MH4 nhập lý do) hoặc thêm ghi chú nội bộ |
| 2 | Booking Server | Hợp lệ: Slot về trống khi huỷ, kích hoạt hoàn tiền nếu cần |
MH3: Panel chờ duyệt booking online
Mô tả màn hình: Danh sách card booking online ở trạng thái chờ; mỗi card có badge đếm và đồng hồ đếm ngược 30 phút, kèm nút Duyệt / Từ chối / Xem chi tiết.
Sự kiện 1 — Duyệt booking
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Quản lý ca | Xem card yêu cầu đặt sân online mới |
| 2 | Quản lý ca | Nhấn [Duyệt] |
| 3 | Booking Server | Hợp lệ: Xác nhận booking, slot Gantt chuyển "Đã đặt", báo khách |
Không hợp lệ — Sự kiện 1
| STT | Trường hợp | Thông báo | Vị trí · Loại | Xử lý |
|---|---|---|---|---|
| 1 | Quá 30 phút chưa xử lý | "Yêu cầu đã hết hạn." | Trên card · thông tin | Card tự biến mất |
| 2 | Khung giờ vừa bị chiếm | "Khung giờ đã có booking khác, không thể duyệt." | Trên card · lỗi | Chặn duyệt |
| 3 | Không có quyền duyệt | "Bạn không có quyền duyệt booking." | Panel · cảnh báo | Ẩn panel/nút |
Sự kiện 2 — Từ chối booking
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Quản lý ca | Nhấn [Từ chối] → mở hộp thoại nhập lý do (MH4) |
| 2 | Booking Server | Hợp lệ: Slot về trống, gửi lý do về app khách |
MH4: Hộp thoại lý do (huỷ / từ chối)
Mô tả màn hình: Hộp thoại nhập lý do dùng chung cho thao tác từ chối booking online và huỷ booking; lý do được gửi về khách / lưu nội bộ.
Sự kiện 1 — Nhập lý do & xác nhận
| STT | Tác nhân | Mô tả |
|---|---|---|
| 1 | Quản lý ca · Thu ngân | Nhập lý do từ chối / huỷ |
| 2 | Booking Server | Hợp lệ: Lưu lý do, cập nhật trạng thái booking, thông báo khách |
Không hợp lệ — Sự kiện 1
| STT | Trường hợp | Thông báo | Vị trí · Loại | Xử lý |
|---|---|---|---|---|
| 1 | Bỏ trống lý do | "Vui lòng nhập lý do." | Dưới ô lý do · lỗi | Chặn xác nhận |
4/ Trường hợp đặc biệt
Case đặc biệt cần xử lý
- Case: Booking online hết hạn. Yêu cầu không được xử lý trong 30 phút sẽ tự hết hiệu lực và rời khỏi panel; slot trở về trống.
- Case: Slot khoá bảo trì. Slot xám chỉ hiển thị tooltip lý do (do Module Quản lý Chi nhánh & Sân khoá), không cho thao tác booking.
- Case: Giá gia hạn. Giá gia hạn lấy theo bảng giá hiện hành của loại sân; nếu khung giờ kế tiếp đã có booking thì không cho gia hạn.
- Case: Đồng bộ realtime. Khi có booking mới từ POS/app hoặc sân bị khoá, Gantt và 4 card tự cập nhật mà người dùng không cần tải lại trang.