General Rules¶
Phần này mô tả các quy định theo chuẩn RESTful, các biến và giá trị mặc định cần thiết.
Ghi chú
Tài liệu đang trong quá trình hoàn thiện và chỉnh sửa cho phù hợp. Những nội dung được mô tả chưa khái quát hết chức năng của ứng dụng nên cần thảo luận thêm. Mọi phản hồi về sai sót cũng như góp ý xin liên hệ VAS Team: labs.mobiistar@gmail.com. Chân thành cảm ơn!
Response header¶
Response header phải là kiểu JSON:
{"integer":1, "boolean":true, "string":"^_^", "array": []}
Response status¶
Trong JSON object trả về luôn có key status quy định trạng thái xử lý của Server.
Là một biến kiểu boolean với hai giá trị:
- true - Server hoàn thành việc xử lý.
- false - Server hoàn thành việc xử lý kèm cảnh báo.
Nếu false thì thiết bị sẽ tìm thêm key message để xác định tình trạng:
# True
.. response::
:status: true
# False
.. response::
:status: false
:message: Something wrong ;((
Kind definition¶
Là một biến kiểu integer xác định loại phép.
- 0 - Nghỉ phép năm.
- 1 - Nghỉ thai sản.
- 2 - Nghỉ phép không lương.
Approval status definition¶
Là một biến kiểu integer xác định trạng thái của đơn xin nghỉ phép/tăng ca.
- -1 - N/A.
- 0 - Chờ duyệt.
- 1 - Đã duyệt.
- 2 - Không duyệt.
- 3 - Yêu cầu chỉnh sửa.
Secret Key¶
Là mã bảo mật được dùng để mã hóa và giải mã giữa client/server. VAS Team sẽ cung cấp sau.
Check Sum¶
Theo cách sau:
checksum ( hash_256 [all_post_data])
Trong đó all_post_data bao gồm access_token + [user_id] + [client_id] + ... + key (Secret Key).
Error Code¶
Là một biến kiểu integer xác định lỗi.
- 0 - Không có lỗi.
- 1 - Mã lỗi ứng với "CODE 1".
- 2 - Mã lỗi ứng với "CODE 2".
- 3 - ...
Error Message¶
Mô tả lỗi đi kèm với Error Code.
Access Code Data¶
Là một JSON object nhận được khi Request Token Code. Bao gồm:
- access_code (string) - Code để Get Access Token Key.
- expires_in (integer) - Thời gian hết hạn được tính bằng giây.
{
"access_code": "_HASH_",
"expires_in": 30
}
Access Token Data¶
Là một JSON object nhận được khi Get Access Token Key. Bao gồm:
- user_id (string) - ID định danh người dùng.
- access_token (string) - Access Token Key.
- expires_time (long) - Thời gian hết hạn (Unix timestamp).
{
"user_id": "18963",
"access_token": "_HASH_",
"expiration": 1513651191000
}
Profile Data¶
Là một JSON object nhận được khi Get profile. Bao gồm:
- user_id (string) - ID định danh người dùng.
- fullname (string) - Họ và tên.
- position (string) - Mã Vị trí.
- deparment (string) - Mã Bộ phận.
- branch (string) - Mã Chi nhánh.
- position_name (string) - Vị trí.
- deparment_name (string) - Bộ phận.
- branch_name (string) - Chi nhánh.
- dob (long) - Ngày sinh.
- phone (string) - Điện thoại.
- email (string) - Thư điện tử.
- address (string) - Địa chỉ.
- avatar (string) - Đường dẫn ảnh.
{
"user_id": "18963",
"fullname": "Leon Tran",
"position": "DEV",
"deparment": "VAS",
"branch": "HCM",
"position_name": "Nhóm phát triển",
"deparment_name": "Phòng Dịch vụ gia tăng",
"branch_name": "Chi nhánh Hồ Chí Minh",
"dob": 1513651191000,
"phone": "0961095661",
"email": "leon.tran@mobistar.vn",
"address": "Saigon Vietnam",
"avatar": "https://cdn.mobistar.vn/18963.png"
}
Shift Data¶
Là một JSON object nhận được khi xem History. Trong đó:
- date (date) - Ngày công.
- in (object) - Chấm công bắt đầu làm việc.
- out (object) - Chấm công kết thúc ca/ngày làm việc.
- written_time (integer) - Thời gian thực hiện chấm công.
- location (array) - Vị trí thực hiện chấm công.
{
"date": {
"in": {"writen_time": integer, "location": [lat, long]},
"out": {"writen_time": integer, "location": [lat, long]}
}
}
Absent Data¶
Là một JSON object nhận được khi Absence detail. Bao gồm:
- user_id (string) - ID định danh người dùng.
- fullname (string) - Họ và tên.
- position (string) - Vị trí.
- deparment (string) - Bộ phận.
- branch (string) - Chi nhánh.
- phone (string) - Điện thoại.
- email (string) - Thư điện tử.
- absent_time (array) - Thời gian nghỉ [1513651191000, 1513651191000].
- total_time (float) - Tổng số ngày nghỉ.
- kind (integer) - Loại phép (Xem Kind definition).
- reason (string) - Lý do.
- status (integer) - Trạng thái đơn (Xem Approval status definition).
{
"user_id": "18963",
"fullname": "Leon Tran",
"position": "DEV",
"deparment": "VAS",
"branch": "HCM",
"phone": "0961095661",
"email": "leon.tran@mobistar.vn",
"absent_time": [1513651191000, 1513651191000],
"total_time": 1,
"kind": 0,
"reason": "Sick",
"status": -1
}
Overtime Data¶
Là một JSON object nhận được khi Overtime detail. Bao gồm:
- user_id (string) - ID định danh người dùng.
- fullname (string) - Họ và tên.
- position (string) - Vị trí.
- deparment (string) - Bộ phận.
- branch (string) - Chi nhánh.
- phone (string) - Điện thoại.
- email (string) - Thư điện tử.
- absent_time (array) - Thời gian nghỉ [1513651191000, 1513651191000].
- total_time (float) - Tổng số giờ tăng ca.
- reason (string) - Lý do.
- status (integer) - Trạng thái đơn (Xem Approval status definition).
{
"user_id": "18963",
"fullname": "Leon Tran",
"position": "DEV",
"deparment": "VAS",
"branch": "HCM",
"phone": "0961095661",
"email": "leon.tran@mobistar.vn",
"absent_time": [1513651191000, 1513651191000],
"total_time": 1,
"reason": "Urgent",
"status": -1
}
Salary Data¶
Là một JSON object nhận được khi Get salary. Bao gồm:
- user_id (string) - ID định danh người dùng.
- fullname (string) - Họ và tên.
- position (string) - Vị trí.
- deparment (string) - Bộ phận.
- branch (string) - Chi nhánh.
- salary (float) - Lương thực lĩnh.
{
"user_id": "18963",
"fullname": "Leon Tran",
"position": "DEV",
"deparment": "VAS",
"branch": "HCM",
"salary": 1234.0
}