Overtime Events
Events ที่เกี่ยวข้องกับเอกสารคำร้องขอทำงานล่วงเวลา (OT)
ข้อมูลใน body ประกอบด้วยฟิลด์พื้นฐานของเอกสาร, ข้อมูลพนักงาน, สถานะการอนุมัติ และข้อมูลเฉพาะของ OT (วันที่/เวลา OT, ประเภท OT, อัตราตัวคูณ)
overtime.created
เกิดขึ้นเมื่อสร้างคำร้องขอทำ OT ใหม่
ตัวอย่าง Payload:
{
"request_id": "req_ot12345678",
"event": "overtime.created",
"event_occurred_at": "2025-01-24 09:00:00",
"body": {
"ot_work_id": "OT2501002",
"employee_id": "20250102EFGH5678",
"ot_work_flag_lv": "02",
"ot_work_date": "2025-01-24",
"ot_work_dt": "2025-01-24",
"ot_work_begin_time": "18:00:00",
"ot_work_end_time": "20:00:00",
"ot_work_start_hour": "2025-01-24 18:00:00",
"ot_work_end_hour": "2025-01-24 20:00:00",
"ot_work_hour": "02:00:00",
"ot_work_sum_time": "02:00:00",
"ot_work_total": "2.00",
"ot_work_desc": "เคลียร์งานประจำสัปดาห์",
"ot_work_path": null,
"approve_flag": "01",
"approve_id": "",
"approve_upd": null,
"approve_remark": null,
"approve_method": "01",
"document_approve_flag": "01",
"document_created_by": "EMP001",
"document_last_upd_by": "EMP001",
"employee_code": "EMP001",
"employee_title_lv": "02",
"company_id": "C001",
"branch_id": "B001",
"department_id": "D001",
"position_id": "P002",
"full_name": "สมหญิง รักงาน",
"approval_status": "Pending",
"source": "hms_admin",
"resource_type": "overtime",
"actor_id": "EMP001",
"ot_work_flag_name": "OT 1.5 เท่า",
"ot_work_flag_name_en": "OT 1.5x",
"ot_enabled": true,
"ot_rate_multiplier": 1.5,
"ot_duration_minutes": 120,
"employee_title_name": "นางสาว"
}
}overtime.updated
เกิดขึ้นเมื่อแก้ไขข้อมูลเอกสาร OT
ตัวอย่าง Payload:
{
"request_id": "req_ot12345679",
"event": "overtime.updated",
"event_occurred_at": "2025-01-24 09:10:00",
"body": {
"ot_work_id": "OT2501002",
"employee_id": "20250102EFGH5678",
"ot_work_flag_lv": "02",
"ot_work_date": "2025-01-24",
"ot_work_dt": "2025-01-24",
"ot_work_begin_time": "18:00:00",
"ot_work_end_time": "21:00:00",
"ot_work_start_hour": "2025-01-24 18:00:00",
"ot_work_end_hour": "2025-01-24 21:00:00",
"ot_work_hour": "03:00:00",
"ot_work_sum_time": "03:00:00",
"ot_work_total": "3.00",
"ot_work_desc": "เคลียร์งานประจำสัปดาห์ (เพิ่มเวลา)",
"ot_work_path": null,
"approve_flag": "01",
"approve_id": "",
"approve_upd": null,
"approve_remark": null,
"approve_method": "01",
"document_approve_flag": "01",
"document_created_by": "EMP001",
"document_last_upd_by": "EMP001",
"employee_code": "EMP001",
"employee_title_lv": "02",
"company_id": "C001",
"branch_id": "B001",
"department_id": "D001",
"position_id": "P002",
"full_name": "สมหญิง รักงาน",
"approval_status": "Pending",
"source": "hms_admin",
"resource_type": "overtime",
"actor_id": "EMP001",
"ot_work_flag_name": "OT 1.5 เท่า",
"ot_work_flag_name_en": "OT 1.5x",
"ot_enabled": true,
"ot_rate_multiplier": 1.5,
"ot_duration_minutes": 180,
"employee_title_name": "นางสาว"
}
}overtime.deleted
เกิดขึ้นเมื่อลบหรือยกเลิกเอกสาร OT
ตัวอย่าง Payload:
{
"request_id": "req_ot12345680",
"event": "overtime.deleted",
"event_occurred_at": "2025-01-24 09:15:00",
"body": {
"ot_work_id": "OT2501002",
"employee_id": "20250102EFGH5678",
"ot_work_flag_lv": "02",
"ot_work_date": "2025-01-24",
"ot_work_dt": "2025-01-24",
"ot_work_begin_time": "18:00:00",
"ot_work_end_time": "21:00:00",
"ot_work_start_hour": "2025-01-24 18:00:00",
"ot_work_end_hour": "2025-01-24 21:00:00",
"ot_work_hour": "03:00:00",
"ot_work_sum_time": "03:00:00",
"ot_work_total": "3.00",
"ot_work_desc": "เคลียร์งานประจำสัปดาห์ (เพิ่มเวลา)",
"ot_work_path": null,
"approve_flag": "01",
"approve_id": "",
"approve_upd": null,
"approve_remark": null,
"approve_method": "01",
"document_approve_flag": "01",
"document_created_by": "EMP001",
"document_last_upd_by": "EMP001",
"employee_code": "EMP001",
"employee_title_lv": "02",
"company_id": "C001",
"branch_id": "B001",
"department_id": "D001",
"position_id": "P002",
"full_name": "สมหญิง รักงาน",
"approval_status": "Pending",
"source": "hms_admin",
"resource_type": "overtime",
"actor_id": "EMP001",
"ot_work_flag_name": "OT 1.5 เท่า",
"ot_work_flag_name_en": "OT 1.5x",
"ot_enabled": true,
"ot_rate_multiplier": 1.5,
"ot_duration_minutes": 180,
"employee_title_name": "นางสาว"
}
}เมื่อได้รับ event นี้ เอกสาร OT ถูกลบออกจากระบบแล้ว ไม่สามารถกู้คืนได้
overtime.approval_progressed
เกิดขึ้นเมื่อมีการดำเนินการอนุมัติตามสายงาน (ยังไม่เสร็จสิ้น)
ตัวอย่าง Payload:
{
"request_id": "req_ot12345681",
"event": "overtime.approval_progressed",
"event_occurred_at": "2025-01-24 10:00:00",
"body": {
"ot_work_id": "OT2501002",
"employee_id": "20250102EFGH5678",
"ot_work_flag_lv": "02",
"ot_work_date": "2025-01-24",
"ot_work_dt": "2025-01-24",
"ot_work_begin_time": "18:00:00",
"ot_work_end_time": "20:00:00",
"ot_work_start_hour": "2025-01-24 18:00:00",
"ot_work_end_hour": "2025-01-24 20:00:00",
"ot_work_hour": "02:00:00",
"ot_work_sum_time": "02:00:00",
"ot_work_total": "2.00",
"ot_work_desc": "เคลียร์งานประจำสัปดาห์",
"ot_work_path": null,
"approve_flag": "04",
"approve_id": "MGR001",
"approve_upd": "2025-01-24 10:00:00",
"approve_remark": "รับทราบ",
"approve_method": "01",
"document_approve_flag": "01",
"document_created_by": "EMP001",
"document_last_upd_by": "MGR001",
"employee_code": "EMP001",
"employee_title_lv": "02",
"company_id": "C001",
"branch_id": "B001",
"department_id": "D001",
"position_id": "P002",
"full_name": "สมหญิง รักงาน",
"approval_status": "Approval Progressed Step 1",
"source": "hms_admin",
"resource_type": "overtime",
"actor_id": "MGR001",
"ot_work_flag_name": "OT 1.5 เท่า",
"ot_work_flag_name_en": "OT 1.5x",
"ot_enabled": true,
"ot_rate_multiplier": 1.5,
"ot_duration_minutes": 120,
"employee_title_name": "นางสาว"
}
}overtime.approved
เกิดขึ้นเมื่อ OT ได้รับการอนุมัติเสร็จสมบูรณ์
ตัวอย่าง Payload:
{
"request_id": "req_ot12345682",
"event": "overtime.approved",
"event_occurred_at": "2025-01-24 10:30:00",
"body": {
"ot_work_id": "OT2501002",
"employee_id": "20250102EFGH5678",
"ot_work_flag_lv": "02",
"ot_work_date": "2025-01-24",
"ot_work_dt": "2025-01-24",
"ot_work_begin_time": "18:00:00",
"ot_work_end_time": "20:00:00",
"ot_work_start_hour": "2025-01-24 18:00:00",
"ot_work_end_hour": "2025-01-24 20:00:00",
"ot_work_hour": "02:00:00",
"ot_work_sum_time": "02:00:00",
"ot_work_total": "2.00",
"ot_work_desc": "เคลียร์งานประจำสัปดาห์",
"ot_work_path": null,
"approve_flag": "02",
"approve_id": "MGR002",
"approve_upd": "2025-01-24 10:30:00",
"approve_remark": "อนุมัติ",
"approve_method": "01",
"document_approve_flag": "02",
"document_created_by": "EMP001",
"document_last_upd_by": "MGR002",
"employee_code": "EMP001",
"employee_title_lv": "02",
"company_id": "C001",
"branch_id": "B001",
"department_id": "D001",
"position_id": "P002",
"full_name": "สมหญิง รักงาน",
"approval_status": "Approved",
"source": "hms_admin",
"resource_type": "overtime",
"actor_id": "MGR002",
"ot_work_flag_name": "OT 1.5 เท่า",
"ot_work_flag_name_en": "OT 1.5x",
"ot_enabled": true,
"ot_rate_multiplier": 1.5,
"ot_duration_minutes": 120,
"employee_title_name": "นางสาว"
}
}overtime.rejected
เกิดขึ้นเมื่อ OT ถูกปฏิเสธ
ตัวอย่าง Payload:
{
"request_id": "req_ot12345683",
"event": "overtime.rejected",
"event_occurred_at": "2025-01-24 10:35:00",
"body": {
"ot_work_id": "OT2501002",
"employee_id": "20250102EFGH5678",
"ot_work_flag_lv": "02",
"ot_work_date": "2025-01-24",
"ot_work_dt": "2025-01-24",
"ot_work_begin_time": "18:00:00",
"ot_work_end_time": "20:00:00",
"ot_work_start_hour": "2025-01-24 18:00:00",
"ot_work_end_hour": "2025-01-24 20:00:00",
"ot_work_hour": "02:00:00",
"ot_work_sum_time": "02:00:00",
"ot_work_total": "2.00",
"ot_work_desc": "เคลียร์งานประจำสัปดาห์",
"ot_work_path": null,
"approve_flag": "03",
"approve_id": "MGR002",
"approve_upd": "2025-01-24 10:35:00",
"approve_remark": "ไม่อนุมัติ",
"approve_method": "01",
"document_approve_flag": "03",
"document_created_by": "EMP001",
"document_last_upd_by": "MGR002",
"employee_code": "EMP001",
"employee_title_lv": "02",
"company_id": "C001",
"branch_id": "B001",
"department_id": "D001",
"position_id": "P002",
"full_name": "สมหญิง รักงาน",
"approval_status": "Rejected",
"source": "hms_admin",
"resource_type": "overtime",
"actor_id": "MGR002",
"ot_work_flag_name": "OT 1.5 เท่า",
"ot_work_flag_name_en": "OT 1.5x",
"ot_enabled": true,
"ot_rate_multiplier": 1.5,
"ot_duration_minutes": 120
}
}Body Fields Reference
Base Document Fields (มีในทุก event)
| Field | Type | Description |
|---|---|---|
employee_id | string | รหัสพนักงานในระบบ (Internal ID) |
employee_code | string | รหัสพนักงาน |
employee_title_lv | string | รหัสคำนำหน้าชื่อ |
employee_title_name | string | ชื่อคำนำหน้า เช่น นาย, นาง, นางสาว (เพิ่มให้อัตโนมัติ) |
full_name | string | ชื่อ-นามสกุลพนักงาน |
company_id | string | รหัสบริษัท |
branch_id | string | รหัสสาขา |
department_id | string | รหัสแผนก |
position_id | string | รหัสตำแหน่ง |
approve_flag / document_approve_flag | string | รหัสสถานะการอนุมัติ (01 = Pending, 02 = Approved, 03 = Rejected, 04+ = Step X) |
approve_id | string | รหัสพนักงานผู้อนุมัติ (ถ้ามี) |
approve_upd | string | วันที่และเวลาที่อนุมัติ (YYYY-MM-DD HH:mm:ss) |
approve_remark | string | หมายเหตุการอนุมัติ |
approve_method | string | รหัสวิธีการอนุมัติ (เช่น 01, 02) |
approval_status | string | สถานะการอนุมัติ (เช่น Pending, Approved, Rejected) |
document_created_by | string | รหัสพนักงานผู้สร้างคำร้อง/เอกสาร |
document_last_upd_by | string | รหัสพนักงานผู้อัปเดต/อนุมัติเอกสารล่าสุด |
source | string | แหล่งที่มาของการทำรายการ (เช่น hms_admin, openapi) |
resource_type | string | ประเภทของเอกสาร (เช่น time_leave, overtime) |
actor_id | string | รหัสผู้ใช้งานที่ทำให้เกิด Event นี้ (เช่น ผู้ขอ, ผู้อนุมัติตามสายงาน) |
Overtime Fields
| Field | Type | Description |
|---|---|---|
ot_work_id | string | รหัสเอกสาร OT |
ot_work_flag_lv | string | รหัสประเภทการทำ OT (เช่น 1.5, 3.0) |
ot_work_date | string | วันที่ทำ OT |
ot_work_dt | string | วันที่ทำ OT (YYYY-MM-DD) |
ot_work_begin_time | string | เวลาเริ่มต้นทำ OT (HH:mm:ss) |
ot_work_end_time | string | เวลาสิ้นสุดการทำ OT (HH:mm:ss) |
ot_work_start_hour | string | วันเวลาที่เริ่มต้น OT (YYYY-MM-DD HH:mm:ss) |
ot_work_end_hour | string | วันเวลาที่สิ้นสุด OT (YYYY-MM-DD HH:mm:ss) |
ot_work_hour | string | จำนวนชั่วโมง OT (HH:mm:ss) |
ot_work_sum_time | string | ยอดรวมเวลา OT (HH:mm:ss) |
ot_work_total | string | ยอดรวมจำนวนชั่วโมง (Decimal) |
ot_work_desc | string | หมายเหตุ/เหตุผลการทำ OT |
ot_work_path | string | พาธไฟล์แนบ (ถ้ามี) |
ot_work_flag_name | string | ชื่อประเภท OT (ภาษาไทย เช่น “OT 1.5 เท่า”) |
ot_work_flag_name_en | string | ชื่อประเภท OT (ภาษาอังกฤษ) |
ot_enabled | boolean | เปิดให้ทำ OT ได้หรือไม่ |
ot_rate_multiplier | number | อัตราตัวคูณค่าล่วงเวลา (เช่น 1.5, 2.0, 3.0) |
ot_duration_minutes | number | ระยะเวลาทำ OT ทั้งหมดในหน่วยนาที |
สรุป Overtime Events
| Event Code | คำอธิบาย |
|---|---|
overtime.created | สร้างคำร้องขอทำ OT ใหม่ |
overtime.updated | แก้ไขข้อมูลเอกสาร OT |
overtime.deleted | ลบหรือยกเลิกเอกสาร OT |
overtime.approval_progressed | ดำเนินการอนุมัติตามสายงาน (ยังไม่เสร็จสิ้น) |
overtime.approved | OT ได้รับการอนุมัติเสร็จสมบูรณ์ |
overtime.rejected | OT ถูกปฏิเสธ |
Last updated on