Skip to Content
🚀 Welcome to Humansoft Open API Documentation

Get Change List

ดึงรายการคำขอเปลี่ยนกะ

ใช้ API นี้เพื่อดูรายการคำขอเปลี่ยนกะของพนักงาน สามารถกรองตามช่วงเวลา สถานะ และเงื่อนไขอื่นๆ

Endpoint

GET /api/v1/open-apis/work-cycle-change/get-list

สิทธิ์ที่ต้องการ: API Key ต้องมีสิทธิ์ ข้อมูลการยื่นเอกสาร (document:manage)

Request Parameters

Required Parameters

ParameterTypeRequiredDescriptionExample
start_datestringYesวันที่เริ่มต้น (YYYY-MM-DD)2026-01-01
end_datestringYesวันที่สิ้นสุด (YYYY-MM-DD)2026-01-31

Optional Parameters

ParameterTypeRequiredDescriptionExample
employee_codestringNoรหัสพนักงานEMP001
approve_flagstringNoสถานะอนุมัติ (01, 02, 03)01
work_cycle_mode_lvstringNoโหมดเปลี่ยนกะ (change, switch)change
work_cycle_idstringNoID ของกะ (Base64)MjAyNTExMjdENDU3M0M0MjE2Mzk=
keywordstringNoคำค้นหา (ชื่อ, รหัสพนักงาน)สมชาย
company_idstringNoID ของบริษัท (Base64)MjAyNTExMjdENDU3M0M0MjE2Mzk=
branch_idstringNoID ของสาขา (Base64)MjAyNTExMjdENDU3M0M0MjE2Mzk=
department_idstringNoID ของแผนก (Base64)MjAyNTExMjdENDU3M0M0MjE2Mzk=
sort_bystringNoเรียงตาม fieldwork_cycle_change_dt
sort_orderstringNoลำดับการเรียง (ASC, DESC)DESC
_PAGEnumberNoหน้าที่ต้องการ1
_NUMBER_PER_PAGEnumberNoจำนวนรายการต่อหน้า (1-100, ค่าเริ่มต้น 10)10

Response Format

Success Response (HTTP 200)

{ "code": 200, "message": "สำเร็จ", "payload": [ { "work_cycle_change_id": "20251127D4573C421639", "employee_code": "EMP001", "employee_name": "สมชาย", "employee_last_name": "ใจดี", "employee_nickname": "ชาย", "employee_name_en": "Somchai", "employee_last_name_en": "Jaidee", "employee_nickname_en": "Chai", "work_cycle_change_dt": "2026-01-20", "work_cycle_mode_lv": "change", "work_cycle_mode_name": "เปลี่ยนกะการทำงาน", "work_cycle_mode_name_en": "Change Shift", "work_cycle_id": "20251127D4573C421639", "work_cycle_code": "B", "work_start_time": "13:00", "work_end_time": "22:00", "work_cycle_change_desc": "ต้องไปธุระช่วงเช้า", "approve_flag": "01", "approve_status": "Pending", "approve_id": "20251127D4573C421639", "approve_upd": "2026-01-14 10:00:00", "approve_remark": "", "created": "2026-01-14 10:00:00", "created_by": "20251127D4573C421639", "last_upd": "2026-01-14 10:00:00", "last_upd_by": "20251127D4573C421639", "image_url": "https://cdn.humansoft.co.th/.../image/a1B2c3D4e5F6.png" } ], "_PAGINATION": { "_TOTAL_RECORDS": 15, "_PAGE": 1, "_NUMBER_PER_PAGE": 10 } }

Error Response - Validation Failed (HTTP 400)

{ "code": 400, "message": "ไม่สำเร็จ", "errors": [ "Missing required parameter: 'start_date'", "'end_date' must be in format YYYY-MM-DD" ] }

Error Response - Employee Not Found (HTTP 400)

{ "code": 400, "message": "ไม่สำเร็จ", "error": "Employee not found: EMP001" }

Response Fields

FieldTypeDescription
work_cycle_change_idstringID ของคำขอเปลี่ยนกะ
employee_codestringรหัสพนักงาน
employee_namestringชื่อพนักงาน (ไทย)
employee_last_namestringนามสกุลพนักงาน (ไทย)
employee_nicknamestringชื่อเล่นพนักงาน (ไทย)
employee_name_enstringชื่อพนักงาน (อังกฤษ)
employee_last_name_enstringนามสกุลพนักงาน (อังกฤษ)
employee_nickname_enstringชื่อเล่นพนักงาน (อังกฤษ)
work_cycle_change_dtstringวันที่เปลี่ยนกะ
work_cycle_mode_lvstringโหมด (change, switch)
work_cycle_mode_namestringชื่อโหมด (ไทย)
work_cycle_mode_name_enstringชื่อโหมด (อังกฤษ)
work_cycle_idstringID ของกะที่เปลี่ยนไป
work_cycle_codestringรหัสกะ
work_start_timestringเวลาเริ่มทำงาน
work_end_timestringเวลาสิ้นสุดทำงาน
work_cycle_change_descstringเหตุผล/รายละเอียด
approve_flagstringรหัสสถานะอนุมัติ (ดูตาราง Approve Status Values)
approve_statusstringชื่อสถานะอนุมัติ (ดูตาราง Approve Status Values)
approve_idstringuser_id ของผู้ทำรายการล่าสุด เช่น ผู้ยื่น ผู้แก้ไข หรือผู้อนุมัติ
approve_upddatetimeวันเวลาที่ทำรายการล่าสุด เช่น ยื่น แก้ไข หรืออนุมัติ
approve_remarkstringหมายเหตุการอนุมัติ
createddatetimeวันเวลาที่สร้าง
created_bystringuser_id ของผู้สร้างเอกสาร
last_upddatetimeวันเวลาที่แก้ไขล่าสุด
last_upd_bystringuser_id ของผู้แก้ไขล่าสุด
image_urlstring | nullURL ของไฟล์แนบ, null หากไม่มีไฟล์แนบ

Switch Mode Additional Fields

FieldTypeDescription
work_cycle_switch_dtstringวันที่สลับกะ
switch_work_cycle_id_fromstringID กะเดิม
switch_work_cycle_id_tostringID กะที่สลับไป

Approve Status Values

approve_flagapprove_statusDescription
01Pendingรออนุมัติ
02Approvedอนุมัติแล้ว
03Not Approvedไม่อนุมัติ
04Manager Approvedหัวหน้าอนุมัติขั้นที่ 1 แล้ว รอขั้นถัดไป
05Recheckส่งกลับตรวจสอบอีกครั้ง
06Manager Approvedหัวหน้าอนุมัติขั้นที่ 2 แล้ว รอขั้นถัดไป
07Manager Approvedหัวหน้าอนุมัติขั้นที่ 3 แล้ว รอขั้นถัดไป
08Manager Approvedหัวหน้าอนุมัติขั้นที่ 4 แล้ว รอขั้นถัดไป

Code Examples

curl -X GET "https://openapi.humansoft.co.th/api/v1/open-apis/work-cycle-change/get-list?start_date=2026-01-01&end_date=2026-01-31&employee_code=EMP001" \ -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY"

Approve Flag Filter Values

ValueStatusDescription
01Pendingรออนุมัติ (รวม 04-08)
02Approvedอนุมัติแล้ว
03Not Approvedไม่อนุมัติ

เมื่อกรอง approve_flag=01 จะรวมสถานะรออนุมัติทุกระดับ (01, 04, 06, 07, 08) รวมถึงเอกสารที่ถูกส่งกลับตรวจสอบอีกครั้ง (05)

Validation Rules

ParameterValidationError Message
start_dateต้องระบุและรูปแบบ YYYY-MM-DDMissing required parameter: 'start_date'
end_dateต้องระบุและรูปแบบ YYYY-MM-DDMissing required parameter: 'end_date'
end_dateต้อง >= start_date'end_date' must be greater than or equal to 'start_date'
start_date, end_dateต้องอยู่ในรูปแบบ YYYY-MM-DD'start_date' must be in format YYYY-MM-DD
start_date, end_dateต้องเป็นวันที่ที่มีอยู่จริง'start_date' is not a valid date
approve_flagต้องเป็น 01, 02, หรือ 03'approve_flag' must be one of: 01, 02, 03
work_cycle_mode_lvต้องเป็น change หรือ switch'work_cycle_mode_lv' must be 'change' or 'switch'
sort_byต้องเป็น field ที่รองรับ'sort_by' must be one of: work_cycle_change_dt, employee_code, approve_flag, created
sort_orderต้องเป็น ASC หรือ DESC'sort_order' must be either 'ASC' or 'DESC'
_PAGEต้องเป็นตัวเลขตั้งแต่ 1 ขึ้นไป'_PAGE' must be a positive number
_NUMBER_PER_PAGEต้องเป็นตัวเลข 1-100'_NUMBER_PER_PAGE' must be a number between 1 and 100

Notes

Use Cases

  1. ดูคำขอเปลี่ยนกะของตัวเอง - กรองตาม employee_code
  2. HR ตรวจสอบคำขอรออนุมัติ - กรอง approve_flag=01
  3. รายงานการเปลี่ยนกะ - ดูรายการทั้งหมดในช่วงเวลา

Sorting

  • Default: เรียงตาม work_cycle_change_dt จากวันที่เก่าไปใหม่
  • Available fields: work_cycle_change_dt, employee_code, approve_flag, created

เมื่อเรียงตาม work_cycle_change_dt (ค่าเริ่มต้น) ผลการเรียงจะกลับด้านกับ sort_order — ไม่ส่งหรือส่ง DESC จะได้วันที่เก่าไปใหม่ ส่วน ASC จะได้วันที่ใหม่ไปเก่า การเรียงตาม field อื่นเป็นไปตาม sort_order ตามปกติ

Last updated on