Skip to Content
🚀 Welcome to Humansoft Open API Documentation

Update Employee Setting

แก้ไขการตั้งค่ากะพื้นฐานของพนักงาน

ใช้ API นี้เพื่อกำหนดกะพื้นฐานให้พนักงาน เช่น กะประจำวันจันทร์-ศุกร์

Endpoint

POST /api/v1/open-apis/work-cycle/update-employee-base-work-cycle-setting

Request Parameters

Required Parameters

ParameterTypeRequiredDescriptionExample
employee_codestringYesรหัสพนักงานEMP001
work_cycle_formatstringYesรูปแบบกะweekly
day_listsarrayYesรายการกะแต่ละวันดูตัวอย่างด้านล่าง

day_lists[] Object

FieldTypeRequiredDescriptionExample
daystringYesวัน (monday, tuesday, …)monday
idstringYesID ของกะ (Base64)V0MwMDE=
codestringNoรหัสกะA
namestringNoชื่อกะA : 08:00-17:00

Request Body Example

{ "employee_code": "EMP001", "work_cycle_format": "weekly", "day_lists": [ {"day": "monday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "tuesday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "wednesday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "thursday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "friday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"} ] }

Response Format

Success Response (HTTP 200)

{ "code": 200, "message": "สำเร็จ", "payload": { "employee_id": "RU1QMDE=", "employee_code": "EMP001", "employee_name": "สมชาย ใจดี", "employee_name_en": "Somchai Jaidee", "work_cycle_format": "weekly", "work_cycle_id_json": "{\"monday\":\"1\",\"tuesday\":\"1\",\"wednesday\":\"1\",\"thursday\":\"1\",\"friday\":\"1\"}", "work_cycle_lists": { "monday": { "work_cycle_code": "A", "work_cycle_id": "V0MwMDE=" }, "tuesday": { "work_cycle_code": "A", "work_cycle_id": "V0MwMDE=" }, "wednesday": { "work_cycle_code": "A", "work_cycle_id": "V0MwMDE=" }, "thursday": { "work_cycle_code": "A", "work_cycle_id": "V0MwMDE=" }, "friday": { "work_cycle_code": "A", "work_cycle_id": "V0MwMDE=" } }, "updated": "2026-01-14 10:30:00" } }

Error Response - Validation Failed (HTTP 400)

{ "code": 400, "message": "Validation failed", "errors": [ "Missing required parameter: 'employee_code'", "Missing required parameter: 'work_cycle_format'", "Missing required parameter: 'day_lists'" ] }

Error Response - Employee Not Found (HTTP 400)

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

Response Fields

FieldTypeDescription
employee_idstringID ของพนักงาน (Base64)
employee_codestringรหัสพนักงาน
employee_namestringชื่อ-นามสกุลพนักงาน (ไทย)
employee_name_enstringชื่อ-นามสกุลพนักงาน (อังกฤษ)
work_cycle_formatstringรูปแบบกะ
work_cycle_id_jsonstringJSON ของ work_cycle_id แต่ละวัน
work_cycle_listsobjectรายการกะแต่ละวัน
updateddatetimeวันเวลาที่อัพเดท

Code Examples

curl -X POST "https://openapi.humansoft.co.th/api/v1/open-apis/work-cycle/update-employee-base-work-cycle-setting" \ -H "Ocp-Apim-Subscription-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "employee_code": "EMP001", "work_cycle_format": "weekly", "day_lists": [ {"day": "monday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "tuesday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "wednesday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "thursday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"}, {"day": "friday", "id": "V0MwMDE=", "code": "A", "name": "A : 08:00-17:00"} ] }'

Validation Rules

ParameterValidationError Message
employee_codeต้องระบุและเป็น stringMissing required parameter: 'employee_code'
work_cycle_formatต้องระบุและเป็น stringMissing required parameter: 'work_cycle_format'
day_listsต้องระบุและเป็น arrayMissing required parameter: 'day_lists'
day_lists[].dayต้องระบุMissing 'day' in day_lists[index]
day_lists[].idต้องระบุMissing 'id' in day_lists[index]

Day Keys

Keyวัน
mondayวันจันทร์
tuesdayวันอังคาร
wednesdayวันพุธ
thursdayวันพฤหัสบดี
fridayวันศุกร์
saturdayวันเสาร์
sundayวันอาทิตย์

Error Handling

ErrorCauseSolution
Missing required parameter: 'employee_code'ไม่ได้ส่ง employee_codeตรวจสอบ request body
Missing required parameter: 'work_cycle_format'ไม่ได้ส่ง work_cycle_formatระบุ weekly หรือ daily
Missing required parameter: 'day_lists'ไม่ได้ส่ง day_listsส่ง array ของกะแต่ละวัน
Missing 'id' in day_lists[index]ไม่ได้ระบุ id ในรายการใส่ work_cycle_id (Base64)
Employee not found with code: XXXไม่พบพนักงานตรวจสอบ employee_code

Notes

Use Cases

  1. กำหนดกะพื้นฐาน - ตั้งกะประจำวันให้พนักงานใหม่
  2. เปลี่ยนกะทำงาน - ย้ายพนักงานไปทำกะอื่น
  3. แก้ไขวันหยุด - เพิ่ม/ลบวันที่ต้องเข้าทำงาน

Partial Update

  • สามารถส่งเฉพาะวันที่ต้องการแก้ไข
  • วันที่ไม่ได้ส่งจะคงค่าเดิม (ถ้า work_cycle_format เดิม)
  • ถ้าเปลี่ยน work_cycle_format จะ reset ค่าทั้งหมด

หา work_cycle_id

  • ใช้ Get Work Cycle Types เพื่อดู work_cycle_id ของกะทั้งหมด
  • ID เป็นรูปแบบ Base64

Activity Log

  • ระบบจะบันทึก Log การแก้ไขกะอัตโนมัติ
  • สามารถตรวจสอบได้ในประวัติการแก้ไขข้อมูลพนักงาน
Last updated on