Bỏ qua để đến Nội dung

Di động: chấm công và nghỉ phép

Trạng thái vào ra, GPS, công tháng, tạo và duyệt đơn nghỉ

RouteThao tác
GET /attendance/statusĐọc trạng thái, quyền chấm, ca trong ngày và yêu cầu GPS/ảnh.
POST /attendance/checkBody {"action":"in","latitude":10.1,"longitude":106.7} hoặc action="out".
GET /attendance/month?year=2026&month=9Bảng công của chính nhân viên đang đăng nhập.
GET /leave/typesLoại nghỉ được dùng và số dư.
GET /leave/requests?limit=30&offset=0Danh sách đơn của chính mình.
POST /leave/requestsTạo đơn với typeId, dateFrom, dateTo, duration.
GET /leave/approvalsDanh sách chờ người quản lý duyệt.

attendance/check nhận trạng thái mong muốn: gửi lặp cùng action không đảo trạng thái vừa chấm. Khi công ty bật định vị, thiếu vĩ độ hoặc kinh độ trả location_required. Ảnh chấm công có thể bắt buộc theo cấu hình công ty.

POST /api/mobile/leave/requests
{"typeId":7,"dateFrom":"2026-10-05","dateTo":"2026-10-05",
 "duration":"am","notes":"Việc gia đình"}

duration có full, am, pm; với loại nghỉ theo giờ có thể dùng specific và hourFrom/hourTo. Huỷ dùng POST /leave/requests/<id>/cancel; duyệt hoặc từ chối dùng POST /leave/approvals/<id>/approve hay /refuse.