Staff — Tổng quan
Staff là phần quản lý nhân sự và lịch làm việc: nhân viên xem lịch của mình (calendar, timetable), xin/được duyệt nghỉ phép (leave), và admin quản lý Staff Roster (lịch ca làm) theo tuần — có nhìn thấy nghỉ phép trùng ca để tránh xếp nhầm.
Bốn mảng chính
| Mảng | Là gì | Ai dùng |
|---|---|---|
Staff Home (/staff/home) | Trang "My Calendar" của nhân viên + link điều hướng | Staff |
Timetable (/staff/timetable) | Thời khóa biểu cá nhân, điều hướng theo ngày/tuần | Staff |
| Roster Weekly Planner | Admin Portal → Staff → Roster → Weekly Planner; xếp ca theo tuần | Admin |
| Leave / Availability | Xin nghỉ, duyệt nghỉ, khai báo lịch rảnh | Staff + Admin |
Vài ý quan trọng
- Leave là một ngày có giờ bắt buộc: mỗi record có
Date,TimeStart,TimeEnd; không có date range hoặcAll Day. - Shifts và Open khác nhau: Shifts bám published shift; Open không có
ShiftIdvà chịuLeave Request Restrictions. - Tracking Code theo quyền: form admin chỉ hiện code loại Leave; form staff không hiện Tracking Code hoặc Notes.
- Roster thấy được leave trùng ca: khi xếp/sửa ca, popup hiện trường
Leaveread-only nếu nhân viên có nghỉ phép giao với khoảng ca (so theo interval thời gian, không phải chỉ ngày). - Một người = một dòng trong planner, kể cả khi họ có bản ghi ở nhiều BU (dedupe theo
enterpriseUserId). - Open Shift là ca đã publish nhưng chưa gán nhân viên (
EmployeeId = null), để staff đủ điều kiện tự nhận ca.
Bạn nên đọc theo thứ tự
- Góc nhìn end-user — staff và admin thao tác gì.
- Khái niệm & kiến trúc — leave, roster, tracking code, dedupe.
- Dữ liệu & bảng đọc/ghi — EnterpriseUser, bảng Shift/EmployeeAbsence trong luồng.
- Case thường gặp — nghỉ trùng ca, cross-BU, sort slot.