Chuyển tới nội dung chính

API Xác thực Nhân viên & Quản lý Tài khoản

Tài liệu các endpoint đăng nhập và xác định cơ sở làm việc của Nhân viên (Staff) trên ứng dụng zodutcan-staff.


1. Đăng nhập Nhân viên​

Nhân viên (thu ngân, lễ tân, phục vụ) đăng nhập bằng tài khoản được cấp để nhận Bearer Token hoạt động.

  • Method: POST
  • Endpoint: /api/{locale}/v1/staff/login
  • Auth: Không yêu cầu (Public)

Request Body​

{
"login": "staff01@zodutcan.vn",
"password": "staffPassword123"
}

Response Thành công​

{
"token": "45|StAfF98234hjkfsd98234hjkfsd98234h...",
"staff": {
"id": "019b8d48-staff-001",
"name": "Nguyễn Thị Thu Ngân",
"email": "staff01@zodutcan.vn",
"phone": "0987654321",
"club_id": "019b8d48-club-hcm",
"can_create_members": true,
"can_manage_content": false
}
}

2. Lấy Thông tin Nhân viên & Đồng bộ FCM Device Token​

Được gọi ngay sau khi đăng nhập để lấy thông tin nhân viên đang hoạt động và đồng thời gửi FCM Token lên máy chủ nhận thông báo.

  • Method: GET
  • Endpoint: /api/{locale}/v1/staff
  • Auth: auth:staff_api (Bearer Token)

Query Parameters​

Tham sốKiểuMô tả
device_tokenstringToken thông báo Firebase Cloud Messaging (FCM).
login_bystringThiết bị đăng nhập: android hoặc ios.

Response Thành công​

{
"id": "019b8d48-staff-001",
"name": "Nguyễn Thị Thu Ngân",
"email": "staff01@zodutcan.vn",
"club_id": "019b8d48-club-hcm",
"club_name": "Zodutcan Saigon Center",
"is_active": true,
"can_create_members": true
}

3. Lấy Chi nhánh được Phân công​

Lấy thông tin chi nhánh/chi nhánh mà nhân viên được phân công (gồm mã liên kết CukCuk cukcuk_branch_id, tên chi nhánh, địa chỉ).

  • Method: GET
  • Endpoint: /api/{locale}/v1/staff/assigned-branch
  • Auth: auth:staff_api (Bearer Token)

Query Parameters​

Tham sốKiểuMặc địnhMô tả
pageinteger1Trang hiện tại.
limitinteger20Số lượng chi nhánh mỗi trang.
qstringnullTừ khóa tìm kiếm chi nhánh.

Response Thành công​

{
"club_id": "019b8d48-club-hcm",
"club_name": "Zodutcan Saigon Center",
"cukcuk_branch_id": "cukcuk-b01",
"address": "65 Lê Lợi, Bến Nghé, Quận 1, TP.HCM",
"hotline": "02838221199",
"is_open": true
}

4. Quản lý Tài khoản & Đăng xuất​

  • Lấy thông tin Hồ sơ: GET /api/{locale}/v1/staff/account
  • Cập nhật Hồ sơ: PUT /api/{locale}/v1/staff/account
  • Gửi OTP đặt lại mật khẩu: POST /api/{locale}/v1/staff/otp/send với { "mobile": "..." }
  • Xác thực OTP: POST /api/{locale}/v1/staff/otp/verify với { "mobile": "...", "otp": "..." }
  • Cập nhật mật khẩu mới: POST /api/{locale}/v1/staff/update-password với { "mobile": "...", "otp": "...", "password": "..." }
  • Đăng xuất Staff: POST /api/{locale}/v1/staff/logout