Skip to Content
🚀 Welcome to Humansoft Open API Documentation
DocumentationAPI ReferenceEmployee (พนักงาน)Overview

Employee API Module

ภาพรวม (Overview)

โมดูล Employee เป็น API สำหรับจัดการข้อมูลพนักงานทั้งหมด ครอบคลุมตั้งแต่การสร้างพนักงานใหม่ การดึงข้อมูล การแก้ไข ไปจนถึงการนำเข้าข้อมูลจำนวนมาก รวมถึงการจัดการข้อมูล 3 หมวดหลัก: Setting (การตั้งค่า), Profile (ข้อมูลส่วนตัว) และ Financial (ข้อมูลการเงิน)

Employee API เป็น API หลักสำหรับการบริหารจัดการข้อมูลพนักงานในระบบ ควรใช้ร่วมกับ Organization API เพื่อดึงข้อมูล Master Data เช่น โครงสร้างองค์กร ตำแหน่งงาน เป็นต้น

สิทธิ์ที่ต้องการ: API ในโมดูลนี้ต้องการสิทธิ์ ข้อมูลพนักงานพื้นฐาน (employee:read:basic) สำหรับการอ่านและจัดการข้อมูลทั่วไป หรือ ข้อมูลส่วนตัวพนักงาน (employee:read:personal) สำหรับเพิ่ม/แก้ไข/ลบข้อมูลประวัติและการเงิน — ขึ้นกับแต่ละ endpoint

API Endpoints (6 endpoints)

EndpointMethodDescription
Get Employee ListGETดึงรายการพนักงานทั้งหมด รองรับ Filter และ Pagination
Get Employee InfoGETดึงข้อมูลพนักงานรายบุคคลแบบครบถ้วน (18 หมวด)
Get Employee DataGETดึงข้อมูลพนักงานตามประเภท (Setting/Profile/Financial)
Add EmployeePOSTสร้างพนักงานใหม่พร้อม Auto Actions
Update EmployeePOSTแก้ไขข้อมูลพนักงาน (Router Pattern)
Import EmployeePOSTนำเข้าข้อมูลพนักงานจำนวนมาก (Bulk Import)

Manage (จัดการสถานะพนักงาน)

Endpointpath_actionDescription
Sign Outsign-outบันทึกการลาออก/พ้นสภาพพนักงาน
Get Resign Documentget-resign-docดึงเอกสารลาออก (PDF)
Reactivereactiveเปิดใช้งานพนักงานที่ลาออกอีกครั้ง

Data Categories

ข้อมูลพนักงานแบ่งเป็น 3 หมวดหลัก:

1. Setting (การตั้งค่า)

ข้อมูลการตั้งค่าการทำงานของพนักงาน:

หมวดย่อยDescription
Generalวันทำงาน, ชั่วโมงทำงาน, การปัดเศษ
Approverผู้อนุมัติ
Userบัญชีผู้ใช้งาน
Work Cycleกะการทำงาน (จันทร์-อาทิตย์)
Holidayวันหยุดประจำสัปดาห์
OTประเภท OT ที่อนุญาต
Quotaโควตาการลา
Time Frameกรอบเวลาการทำงาน
Cost Centerศูนย์ต้นทุน
Role Dutyหน้าที่ปฏิบัติงาน
Facialข้อมูลใบหน้า (Face Recognition)

2. Profile (ข้อมูลส่วนตัว)

ข้อมูลประวัติและข้อมูลส่วนตัวของพนักงาน:

หมวดย่อยDescription
Addressที่อยู่ตามทะเบียนบ้าน/ที่อยู่ปัจจุบัน
Familyข้อมูลครอบครัว (บิดา, มารดา, คู่สมรส, บุตร)
Workประวัติการทำงาน
Educationประวัติการศึกษา
Abilityความสามารถพิเศษ
Language Skillทักษะภาษา
Typing Skillทักษะการพิมพ์ดีด
Driving Skillทักษะการขับขี่
Trainingประวัติการฝึกอบรม
Possessทรัพย์สินที่รับผิดชอบ
Documentเอกสารแนบ
Hospitalโรงพยาบาล
Loanเงินกู้

3. Financial (ข้อมูลการเงิน)

ข้อมูลด้านการเงินและสวัสดิการ:

หมวดย่อยDescription
Constantรายรับ/รายจ่ายคงที่ (ค่าตำแหน่ง, ค่าครองชีพ)
Fundกองทุนสำรองเลี้ยงชีพ
Welfareสวัสดิการ
Taxข้อมูลภาษี
Work Insuranceประกันสังคม
Salary Auto Checkedรายการตรวจสอบเงินเดือนอัตโนมัติ

Enum Values

Employee Status (สถานะพนักงาน)

CodeThaiEnglish
01กำลังทำงานActive
02ไม่ทำงานInactive
03ลาออกResigned

Employee Type (ประเภทพนักงาน)

CodeThaiEnglish
01พนักงานรายเดือนMonthly
02พนักงานรายวันDaily
03พนักงานพาร์ทไทม์Part-time
04พนักงานเหมาจ่ายContract

Gender (เพศ)

CodeThaiEnglish
01ชายMale
02หญิงFemale

Relation Type (ความสัมพันธ์ครอบครัว)

CodeThaiEnglish
01บิดาFather
02มารดาMother
03คู่สมรสSpouse
04บุตรChild
05ผู้ติดต่อฉุกเฉินEmergency Contact

Auto Actions (สิ่งที่สร้างอัตโนมัติ)

เมื่อสร้างพนักงานใหม่ผ่าน Add Employee ระบบจะดำเนินการต่อไปนี้อัตโนมัติ:

ActionDescription
Auto-gen Employee Codeสร้างรหัสพนักงานตามรูปแบบที่กำหนด (ถ้าไม่ระบุ)
Auto-gen OPT Codeสร้างรหัส OPT 6 หลัก
Create User Accountสร้างบัญชีผู้ใช้งานอัตโนมัติ
Assign Usergroupเพิ่มเข้ากลุ่ม EMPLOYEE อัตโนมัติ
Create Quotaสร้างโควตาการลาประจำปี
Initialize Taxเริ่มต้นหมวดหมู่ภาษี
Set Work Cycleกำหนดกะการทำงานเริ่มต้น (จันทร์-อาทิตย์)
Set Holidayกำหนดวันหยุดเริ่มต้น (วันอาทิตย์)
Send Welcome Emailส่งอีเมลต้อนรับ (ถ้าระบุอีเมล)
Create Activity Logบันทึก Log การสร้างพนักงาน

Default Password: รหัสผ่านเริ่มต้นจะเป็นเลขบัตรประชาชน (ถ้าระบุ) หรือ “1234” (ถ้าไม่ระบุ)


Standard Response Format

Success Response

{ "code": 200, "message": "สำเร็จ", "payload": { /* ข้อมูล */ } }

Error Response

{ "code": 400, "message": "ไม่สำเร็จ", "errors": [ "Error message 1", "Error message 2" ] }

Pagination Response

{ "code": 200, "message": "สำเร็จ", "payload": [ /* รายการข้อมูล */ ], "_PAGINATION": { "_TOTAL_RECORDS": 100, "_PAGE": 1, "_NUMBER_PER_PAGE": 50 } }

ถ้าไม่มีข้อมูล payload จะเป็น [] (empty array) ไม่มี error


Best Practices

1. ใช้ Pagination

// แนะนำ: ใช้ pagination สำหรับรายการพนักงานจำนวนมาก const params = { _PAGE: 1, _NUMBER_PER_PAGE: 50 // ไม่ควรเกิน 100 }

2. Filter ข้อมูล

// แนะนำ: ใช้ filter เพื่อจำกัดขอบเขตข้อมูล const params = { company_id: 'C001', employee_status: '01' // เฉพาะพนักงานที่ทำงานอยู่ }

3. เลือก API ที่เหมาะสม

Use Caseแนะนำ API
แสดงรายการพนักงานGet Employee List
ดูข้อมูลครบถ้วนรายบุคคลGet Employee Info
ดูเฉพาะบางหมวด (Setting/Profile/Financial)Get Employee Data
สร้างพนักงานใหม่Add Employee
แก้ไขข้อมูลพนักงานUpdate Employee
นำเข้าข้อมูลจำนวนมากImport Employee
ลาออก/พ้นสภาพSign Out
เปิดใช้งานพนักงานอีกครั้งReactive

4. ระวังข้อมูล Sensitive

  • include_salary=Y จะรวมข้อมูลเงินเดือน ใช้ด้วยความระมัดระวัง
  • id_no (เลขบัตรประชาชน) เป็นข้อมูลส่วนบุคคล ห้ามเปิดเผย

Organization APIs (Master Data)

Financial APIs

  • Constant API - รายรับ/รายจ่ายคงที่
  • Fund API - กองทุนสำรองเลี้ยงชีพ
  • Welfare API - สวัสดิการ
  • Tax API - ภาษี

Time Management APIs

Last updated on