logologo
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
หน้าหลัก
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
หน้าหลัก
logologo
เวิร์กโฟลว์
ภาพรวม
เริ่มต้นใช้งานอย่างรวดเร็ว

ทริกเกอร์

ภาพรวม
เหตุการณ์คอลเลกชัน
งานที่กำหนดเวลา
เหตุการณ์ก่อนการดำเนินการ
เหตุการณ์หลังการดำเนินการ
เหตุการณ์การดำเนินการที่กำหนดเอง
การอนุมัติ
Webhook

โหนด

ภาพรวม

AI

โมเดลภาษาขนาดใหญ่ (LLM)

การควบคุมกระบวนการ

เงื่อนไข
สาขาหลายเงื่อนไข
การวนซ้ำ
ตัวแปร
สาขาแบบขนาน
เรียกใช้เวิร์กโฟลว์
ผลลัพธ์กระบวนการ
การแมปตัวแปร JSON
การหน่วงเวลา
สิ้นสุด

การคำนวณ

การคำนวณ
การคำนวณวันที่
การคำนวณ JSON

การจัดการข้อมูล

เพิ่มข้อมูล
อัปเดตข้อมูล
สอบถามข้อมูล
ลบข้อมูล
การดำเนินการ SQL

การประมวลผลโดยบุคคล

การประมวลผลโดยบุคคล
การอนุมัติ
สำเนา (CC)

ประเภทส่วนขยาย

คำขอ HTTP
สคริปต์ JavaScript
การแจ้งเตือน
ส่งอีเมล
การตอบกลับ
ข้อความตอบกลับ
ตัวแปร
บันทึกการดำเนินการ
การจัดการเวอร์ชัน
ตัวเลือกขั้นสูง

การพัฒนาส่วนขยาย

ภาพรวม
ขยายประเภททริกเกอร์
ขยายประเภทโหนด
การอ้างอิง API
Previous Pageเหตุการณ์การดำเนินการที่กำหนดเอง
Next PageWebhook
การแจ้งเตือนการแปลด้วย AI

เอกสารนี้แปลโดย AI สำหรับข้อมูลที่ถูกต้อง กรุณาดูเวอร์ชันภาษาอังกฤษ

#การอนุมัติ

Workflow: ApprovalProfessional Edition+

#บทนำ

การอนุมัติเป็นรูปแบบของกระบวนการที่ออกแบบมาโดยเฉพาะสำหรับการเริ่มต้นและดำเนินการโดยมนุษย์เพื่อตัดสินสถานะของข้อมูลที่เกี่ยวข้องครับ/ค่ะ โดยทั่วไปจะใช้สำหรับการจัดการกระบวนการในระบบสำนักงานอัตโนมัติ (Office Automation) หรืองานที่ต้องมีการตัดสินใจโดยมนุษย์ เช่น การสร้างและจัดการกระบวนการด้วยตนเองสำหรับสถานการณ์ต่างๆ เช่น "คำขอลาหยุด", "การอนุมัติเบิกค่าใช้จ่าย" และ "การอนุมัติจัดซื้อวัตถุดิบ" เป็นต้นครับ/ค่ะ

ปลั๊กอินการอนุมัติมีประเภทเวิร์กโฟลว์ (ทริกเกอร์) เฉพาะคือ "การอนุมัติ (เหตุการณ์)" และโหนด "การอนุมัติ" ที่ออกแบบมาสำหรับกระบวนการนี้โดยเฉพาะครับ/ค่ะ เมื่อรวมกับคอลเลกชันที่กำหนดเองและบล็อกที่กำหนดเองซึ่งเป็นเอกลักษณ์ของ NocoBase คุณจะสามารถสร้างและจัดการสถานการณ์การอนุมัติประเภทต่างๆ ได้อย่างรวดเร็วและยืดหยุ่นครับ/ค่ะ

#การสร้างเวิร์กโฟลว์

เมื่อสร้างเวิร์กโฟลว์ ให้เลือกประเภท "การอนุมัติ" เพื่อสร้างเวิร์กโฟลว์การอนุมัติครับ/ค่ะ:

审批触发器_创建审批流程

หลังจากนั้น ในหน้าจอการตั้งค่าเวิร์กโฟลว์ ให้คลิกที่ทริกเกอร์เพื่อเปิดหน้าต่างป๊อปอัปสำหรับการตั้งค่าเพิ่มเติมครับ/ค่ะ

#การตั้งค่าทริกเกอร์

20251226102619

#การผูกคอลเลกชัน

ปลั๊กอินการอนุมัติของ NocoBase ได้รับการออกแบบมาเพื่อความยืดหยุ่น ทำให้สามารถใช้งานร่วมกับคอลเลกชันที่กำหนดเองใดๆ ก็ได้ครับ/ค่ะ นั่นหมายความว่าการตั้งค่าการอนุมัติไม่จำเป็นต้องกำหนดค่าโมเดลข้อมูลซ้ำ แต่สามารถนำคอลเลกชันที่สร้างไว้แล้วมาใช้ได้โดยตรงครับ/ค่ะ ดังนั้น หลังจากเข้าสู่การตั้งค่าทริกเกอร์ สิ่งแรกที่คุณต้องทำคือเลือกคอลเลกชัน เพื่อกำหนดว่ากระบวนการนี้จะดำเนินการกับข้อมูลจากคอลเลกชันใดครับ/ค่ะ:

审批触发器_触发器配置_选择数据表

#วิธีการทริกเกอร์

เมื่อเริ่มต้นการอนุมัติสำหรับข้อมูลทางธุรกิจ คุณสามารถเลือกวิธีการทริกเกอร์ได้สองวิธีดังนี้ครับ/ค่ะ:

  • ก่อนบันทึกข้อมูล

    เริ่มต้นการอนุมัติก่อนที่ข้อมูลที่ส่งจะถูกบันทึก เหมาะสำหรับสถานการณ์ที่ต้องการให้ข้อมูลถูกบันทึกหลังจากผ่านการอนุมัติแล้วเท่านั้นครับ/ค่ะ ในโหมดนี้ ข้อมูลขณะเริ่มต้นจะเป็นเพียงข้อมูลชั่วคราว และจะถูกบันทึกลงในคอลเลกชันที่เกี่ยวข้องอย่างเป็นทางการหลังจากผ่านการอนุมัติแล้วเท่านั้นครับ/ค่ะ

  • หลังบันทึกข้อมูล

    เริ่มต้นการอนุมัติหลังจากที่ข้อมูลที่ส่งถูกบันทึกแล้ว เหมาะสำหรับสถานการณ์ที่สามารถบันทึกข้อมูลก่อนแล้วจึงค่อยอนุมัติครับ/ค่ะ ในโหมดนี้ ข้อมูลจะถูกบันทึกลงในคอลเลกชันที่เกี่ยวข้องแล้วเมื่อเริ่มการอนุมัติ และการแก้ไขใดๆ ในระหว่างกระบวนการอนุมัติก็จะถูกบันทึกเช่นกันครับ/ค่ะ

#ตำแหน่งที่เริ่มต้นการอนุมัติ

คุณสามารถเลือกตำแหน่งในระบบที่สามารถเริ่มต้นการอนุมัติได้ครับ/ค่ะ:

  • เริ่มต้นในบล็อกข้อมูลเท่านั้น

    คุณสามารถผูกการดำเนินการของบล็อกแบบฟอร์มใดๆ ของคอลเลกชันนี้เข้ากับเวิร์กโฟลว์เพื่อเริ่มต้นการอนุมัติ และจัดการหรือติดตามกระบวนการอนุมัติในบล็อกการอนุมัติของข้อมูลแต่ละรายการได้ครับ/ค่ะ โดยปกติจะเหมาะสำหรับข้อมูลทางธุรกิจครับ/ค่ะ

  • เริ่มต้นได้ทั้งในบล็อกข้อมูลและศูนย์งานที่ต้องทำ

    นอกเหนือจากบล็อกข้อมูลแล้ว ยังสามารถเริ่มต้นและจัดการการอนุมัติในศูนย์งานที่ต้องทำ (To-do Center) ส่วนกลางได้ด้วยครับ/ค่ะ ซึ่งโดยปกติจะเหมาะสำหรับข้อมูลด้านการบริหารจัดการครับ/ค่ะ

#ใครสามารถเริ่มต้นการอนุมัติได้

คุณสามารถกำหนดค่าสิทธิ์ตามขอบเขตของผู้ใช้ เพื่อตัดสินว่าผู้ใช้รายใดสามารถเริ่มต้นการอนุมัตินี้ได้ครับ/ค่ะ:

  • ผู้ใช้ทุกคน

    ผู้ใช้ทุกคนในระบบสามารถเริ่มต้นการอนุมัตินี้ได้ครับ/ค่ะ

  • เฉพาะผู้ใช้ที่เลือก

    อนุญาตให้เฉพาะผู้ใช้ในขอบเขตที่ระบุเริ่มต้นการอนุมัตินี้ได้ โดยสามารถเลือกได้หลายรายการครับ/ค่ะ

    20251226114623

#การตั้งค่าหน้าจอแบบฟอร์มสำหรับผู้เริ่มต้น

สุดท้าย คุณต้องตั้งค่าหน้าจอแบบฟอร์มสำหรับผู้เริ่มต้นครับ/ค่ะ หน้าจอนี้จะใช้สำหรับการดำเนินการส่งเมื่อเริ่มต้นจากบล็อกศูนย์การอนุมัติ และเมื่อผู้ใช้เริ่มต้นใหม่หลังจากมีการถอนคืนครับ/ค่ะ คลิกปุ่มตั้งค่าเพื่อเปิดหน้าต่างป๊อปอัป:

审批触发器_触发器配置_发起人表单

คุณสามารถเพิ่มแบบฟอร์มสำหรับกรอกข้อมูลบนหน้าจอของผู้เริ่มต้นโดยอิงจากคอลเลกชันที่ผูกไว้ หรือเพิ่มข้อความอธิบาย (Markdown) เพื่อใช้เป็นคำแนะนำและแนวทางได้ครับ/ค่ะ โดยแบบฟอร์มเป็นสิ่งจำเป็นที่ต้องเพิ่ม มิฉะนั้นผู้เริ่มต้นจะไม่สามารถดำเนินการใดๆ ได้เมื่อเข้าสู่หน้าจอนี้ครับ/ค่ะ

หลังจากเพิ่มบล็อกแบบฟอร์มแล้ว เช่นเดียวกับหน้าจอการตั้งค่าแบบฟอร์มทั่วไป คุณสามารถเพิ่มส่วนประกอบฟิลด์จากคอลเลกชันที่เกี่ยวข้อง และจัดเรียงได้อย่างอิสระเพื่อจัดระเบียบเนื้อหาที่ต้องกรอกในแบบฟอร์มครับ/ค่ะ:

审批触发器_触发器配置_发起人表单_字段配置

นอกเหนือจากปุ่มส่งโดยตรงแล้ว คุณยังสามารถเพิ่มปุ่มดำเนินการ "บันทึกฉบับร่าง" เพื่อรองรับกระบวนการจัดเก็บชั่วคราวได้อีกด้วยครับ/ค่ะ:

审批触发器_触发器配置_发起人表单_操作配置_保存

หากเวิร์กโฟลว์การอนุมัติอนุญาตให้ผู้เริ่มต้นถอนคืนได้ คุณจะต้องเปิดใช้งานปุ่ม "ถอนคืน" ในการตั้งค่าหน้าจอของผู้เริ่มต้นครับ/ค่ะ:

审批触发器_触发器配置_允许撤回

เมื่อเปิดใช้งานแล้ว การอนุมัติที่เริ่มต้นโดยเวิร์กโฟลว์นี้สามารถถูกถอนคืนโดยผู้เริ่มต้นได้ก่อนที่ผู้อนุมัติคนใดจะดำเนินการครับ/ค่ะ แต่หากผู้อนุมัติในโหนดการอนุมัติถัดไปได้ดำเนินการไปแล้ว จะไม่สามารถถอนคืนได้อีกต่อไปครับ/ค่ะ

ข้อแนะนำ

หลังจากเปิดใช้งานหรือลบปุ่มถอนคืนแล้ว คุณจะต้องคลิกบันทึกและส่งในหน้าต่างป๊อปอัปการตั้งค่าทริกเกอร์เพื่อให้การเปลี่ยนแปลงมีผลครับ/ค่ะ

#การ์ด "คำขอของฉัน" 2.0+

ใช้สำหรับตั้งค่าการ์ดงานในรายการ "คำขอของฉัน" ของศูนย์งานที่ต้องทำครับ/ค่ะ

20260213005957

ในการ์ดคุณสามารถเลือกฟิลด์ทางธุรกิจที่ต้องการแสดง (ยกเว้นฟิลด์ความสัมพันธ์) หรือข้อมูลที่เกี่ยวข้องกับการอนุมัติได้อย่างอิสระครับ/ค่ะ

หลังจากสร้างคำขออนุมัติแล้ว คุณจะเห็นการ์ดงานที่กำหนดเองในรายการของศูนย์งานที่ต้องทำครับ/ค่ะ:

20260213010228

#โหมดการแสดงผลเรคคอร์ดในกระบวนการ

  • สแนปช็อต (Snapshot)

    ในกระบวนการอนุมัติ ผู้สมัครและผู้อนุมัติจะเห็นสถานะของเรคคอร์ด ณ ขณะที่เข้าสู่กระบวนการ และหลังจากส่งแล้วจะเห็นเฉพาะเรคคอร์ดที่ตนเองแก้ไขเท่านั้น โดยจะไม่เห็นการอัปเดตที่คนอื่นทำหลังจากนั้นครับ/ค่ะ

  • ล่าสุด (Latest)

    ในกระบวนการอนุมัติ ผู้สมัครและผู้อนุมัติจะเห็นเวอร์ชันล่าสุดของเรคคอร์ดตลอดทั้งกระบวนการ ไม่ว่าสถานะของเรคคอร์ดก่อนการดำเนินการจะเป็นอย่างไรก็ตามครับ/ค่ะ เมื่อสิ้นสุดกระบวนการ พวกเขาจะเห็นเวอร์ชันสุดท้ายของเรคคอร์ดครับ/ค่ะ

#โหนดการอนุมัติ

ในเวิร์กโฟลว์การอนุมัติ คุณจำเป็นต้องใช้โหนด "การอนุมัติ" โดยเฉพาะ เพื่อตั้งค่าตรรกะการดำเนินการสำหรับผู้อนุมัติในการประมวลผล (อนุมัติ, ปฏิเสธ หรือส่งคืน) การอนุมัติที่เริ่มต้นขึ้นครับ/ค่ะ โหนด "การอนุมัติ" สามารถใช้ได้เฉพาะในเวิร์กโฟลว์การอนุมัติเท่านั้นครับ/ค่ะ โปรดดู โหนดการอนุมัติ สำหรับรายละเอียดเพิ่มเติมครับ/ค่ะ

ข้อแนะนำ

หากเวิร์กโฟลว์การอนุมัติไม่มีโหนด "การอนุมัติ" ใดๆ กระบวนการนั้นจะถูกอนุมัติโดยอัตโนมัติครับ/ค่ะ

#การตั้งค่าการเริ่มต้นการอนุมัติ

หลังจากตั้งค่าเวิร์กโฟลว์การอนุมัติและเปิดใช้งานแล้ว คุณสามารถผูกเวิร์กโฟลว์นั้นเข้ากับปุ่มส่งของแบบฟอร์มในคอลเลกชันที่เกี่ยวข้อง เพื่อให้ผู้ใช้เริ่มต้นการอนุมัติได้เมื่อส่งข้อมูลครับ/ค่ะ:

发起审批_绑定工作流

หลังจากนั้น เมื่อผู้ใช้ส่งแบบฟอร์มนี้ เวิร์กโฟลว์การอนุมัติที่เกี่ยวข้องก็จะถูกทริกเกอร์ครับ/ค่ะ ข้อมูลที่ส่งมาจะไม่เพียงแต่ถูกบันทึกไว้ในคอลเลกชันที่เกี่ยวข้องเท่านั้น แต่ยังจะถูกบันทึกเป็นสแนปช็อตในกระบวนการอนุมัติ เพื่อให้ผู้อนุมัติคนต่อไปตรวจสอบได้ครับ/ค่ะ

ข้อแนะนำ

ปัจจุบัน ปุ่มสำหรับเริ่มต้นการอนุมัติรองรับเฉพาะปุ่ม "ส่ง" (หรือ "บันทึก") ในแบบฟอร์มสร้างหรืออัปเดตเท่านั้นครับ/ค่ะ ไม่รองรับปุ่ม "ทริกเกอร์เวิร์กโฟลว์" (ซึ่งสามารถผูกได้เฉพาะกับ "เหตุการณ์การดำเนินการที่กำหนดเอง" เท่านั้น) ครับ/ค่ะ

#ศูนย์งานที่ต้องทำ

ศูนย์งานที่ต้องทำมีจุดเข้าใช้งานแบบรวมศูนย์ เพื่อให้ผู้ใช้สามารถดูและจัดการงานที่ต้องทำได้อย่างสะดวกครับ/ค่ะ การอนุมัติที่ผู้ใช้ปัจจุบันเริ่มต้นและงานที่รอดำเนินการสามารถเข้าถึงได้ผ่านศูนย์งานที่ต้องทำบนแถบเครื่องมือด้านบน และสามารถดูงานที่ต้องทำประเภทต่างๆ ได้ผ่านการนำทางด้านซ้ายครับ/ค่ะ

20250310161203

#รายการที่ฉันส่ง

#ดูการอนุมัติที่ส่งไปแล้ว

20250310161609

#เริ่มต้นการอนุมัติใหม่โดยตรง

20250310161658

#งานที่ต้องทำของฉัน

#รายการงานที่ต้องทำ

20250310161934

#รายละเอียดงานที่ต้องทำ

20250310162111

#HTTP API

#ผู้เริ่มต้น

#การเริ่มต้นจากคอลเลกชัน

หากต้องการเริ่มต้นจากบล็อกข้อมูล คุณสามารถเรียกใช้ได้ดังนี้ (ตัวอย่างเช่น การใช้ปุ่มสร้างของคอลเลกชัน posts):

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  '{
    "title": "Hello, world!",
    "content": "This is a test post."
  }'
  "http://localhost:3000/api/posts:create?triggerWorkflows=workflowKey"

โดยที่พารามิเตอร์ URL triggerWorkflows คือคีย์ของเวิร์กโฟลว์ครับ/ค่ะ หากมีหลายเวิร์กโฟลว์ให้คั่นด้วยเครื่องหมายจุลภาค คุณสามารถดูคีย์นี้ได้โดยการเลื่อนเมาส์ไปวางเหนือชื่อเวิร์กโฟลว์ที่ด้านบนของผืนผ้าใบเวิร์กโฟลว์ครับ/ค่ะ:

工作流_key_查看方式

เมื่อเรียกใช้งานสำเร็จ เวิร์กโฟลว์การอนุมัติสำหรับคอลเลกชัน posts ที่เกี่ยวข้องจะถูกทริกเกอร์ครับ/ค่ะ

ข้อแนะนำ

เนื่องจากการเรียกใช้งานจากภายนอกจำเป็นต้องอิงตามข้อมูลประจำตัวของผู้ใช้ ดังนั้นเมื่อเรียกใช้งานผ่าน HTTP API จะต้องมีการระบุข้อมูลการยืนยันตัวตนเช่นเดียวกับการส่งคำขอจากหน้าจอทั่วไปครับ/ค่ะ ซึ่งรวมถึงเฮดเดอร์ Authorization หรือพารามิเตอร์ token (โทเค็นที่ได้จากการเข้าสู่ระบบ) และเฮดเดอร์ X-Role (ชื่อบทบาทปัจจุบันของผู้ใช้) ครับ/ค่ะ

หากคุณต้องการทริกเกอร์เหตุการณ์สำหรับข้อมูลที่มีความสัมพันธ์แบบหนึ่งต่อหนึ่งในการดำเนินการนี้ (ยังไม่รองรับแบบหนึ่งต่อหลาย) คุณสามารถใช้ ! ในพารามิเตอร์เพื่อระบุข้อมูลทริกเกอร์สำหรับฟิลด์ความสัมพันธ์ได้ครับ/ค่ะ:

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  '{
    "title": "Hello, world!",
    "content": "This is a test post.",
    "category": {
      "title": "Test category"
    }
  }'
  "http://localhost:3000/api/posts:create?triggerWorkflows=workflowKey!category"

เมื่อเรียกใช้งานข้างต้นสำเร็จ เหตุการณ์การอนุมัติสำหรับคอลเลกชัน categories ที่เกี่ยวข้องจะถูกทริกเกอร์ครับ/ค่ะ

ข้อแนะนำ

เมื่อเรียกใช้งาน HTTP API เพื่อทริกเกอร์เหตุการณ์หลังการดำเนินการ คุณต้องใส่ใจกับสถานะการเปิดใช้งานของเวิร์กโฟลว์ และการตั้งค่าคอลเลกชันว่าตรงกันหรือไม่ด้วยครับ/ค่ะ มิฉะนั้นการเรียกใช้งานอาจไม่สำเร็จหรือเกิดข้อผิดพลาดได้ครับ/ค่ะ

#การเริ่มต้นจากศูนย์การอนุมัติ

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  '{
    "collectionName": "<collection name>",
    "workflowId": <workflow id>,
    "data": { "<field>": "<value>" },
    "status": <initial approval status>,
  }'
  "http://localhost:3000/api/approvals:create"

พารามิเตอร์

  • collectionName: ชื่อคอลเลกชันเป้าหมายสำหรับการเริ่มต้นการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • workflowId: ID ของเวิร์กโฟลว์ที่ใช้ในการเริ่มต้นการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • data: ฟิลด์ของเรคคอร์ดคอลเลกชันที่สร้างขึ้นเมื่อเริ่มต้นการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • status: สถานะของเรคคอร์ดที่สร้างขึ้นเมื่อเริ่มต้นการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ ค่าที่เป็นไปได้ได้แก่:
    • 0: ฉบับร่าง หมายถึงการบันทึกแต่ยังไม่ส่งเพื่ออนุมัติครับ/ค่ะ
    • 2: ส่งเพื่ออนุมัติ หมายถึงผู้เริ่มต้นส่งคำขออนุมัติเพื่อเข้าสู่กระบวนการอนุมัติครับ/ค่ะ

#การบันทึกและส่ง

เมื่อการอนุมัติที่เริ่มต้น (หรือถอนคืน) อยู่ในสถานะฉบับร่าง คุณสามารถบันทึกหรือส่งอีกครั้งได้ผ่าน API ด้านล่างนี้ครับ/ค่ะ:

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  '{
    "data": { "<field>": "<value>" },
    "status": 2
  }'
  "http://localhost:3000/api/approvals:update/<approval id>"

#การดึงรายการอนุมัติที่ส่งไปแล้ว

curl -X GET -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' \
  "http://localhost:3000/api/approvals:listMine"

#การถอนคืน

ผู้เริ่มต้นสามารถถอนคืนเรคคอร์ดที่อยู่ระหว่างการอนุมัติได้ผ่าน API ด้านล่างนี้ครับ/ค่ะ:

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  "http://localhost:3000/api/approvals:withdraw/<approval id>"

พารามิเตอร์

  • <approval id>: ID ของเรคคอร์ดการอนุมัติที่ต้องการถอนคืน (จำเป็นต้องระบุ) ครับ/ค่ะ

#ผู้อนุมัติ

หลังจากเวิร์กโฟลว์การอนุมัติเข้าสู่โหนดการอนุมัติแล้ว ระบบจะสร้างงานที่ต้องทำสำหรับผู้อนุมัติปัจจุบันครับ/ค่ะ ผู้อนุมัติสามารถดำเนินการงานอนุมัติให้เสร็จสิ้นได้ผ่านหน้าจอการใช้งาน หรือโดยการเรียกใช้ HTTP API ครับ/ค่ะ

#การดึงบันทึกการดำเนินการอนุมัติ

งานที่ต้องทำคือบันทึกการดำเนินการอนุมัติครับ/ค่ะ คุณสามารถดึงบันทึกการดำเนินการอนุมัติทั้งหมดของผู้ใช้ปัจจุบันได้ผ่าน API ด้านล่างนี้:

curl -X GET -H 'Authorization: Bearer <your token>' \
  "http://localhost:3000/api/approvalRecords:listMine"

โดยที่ approvalRecords เป็นคอลเลกชันทรัพยากร คุณสามารถใช้เงื่อนไขการสืบค้นทั่วไปได้ เช่น filter, sort, pageSize และ page เป็นต้นครับ/ค่ะ

#การดึงบันทึกการดำเนินการอนุมัติแต่ละรายการ

curl -X GET -H 'Authorization: Bearer <your token>' \
  "http://localhost:3000/api/approvalRecords:get/<record id>"

#การอนุมัติและปฏิเสธ

curl -X POST -H 'Authorization: Bearer <your token>' -d \
  '{
    "status": 2,
    "comment": "Looks good to me.",
    "data": { "<field to modify>": "<value>" }
  }'
  "http://localhost:3000/api/approvalRecords:submit/<record id>"

พารามิเตอร์

  • <record id>: ID ของเรคคอร์ดที่ต้องดำเนินการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • status: ฟิลด์สถานะของการดำเนินการอนุมัติ โดย 2 หมายถึง "อนุมัติ" และ -1 หมายถึง "ปฏิเสธ" (จำเป็นต้องระบุ) ครับ/ค่ะ
  • comment: ข้อมูลหมายเหตุสำหรับการดำเนินการอนุมัติ (ไม่บังคับ) ครับ/ค่ะ
  • data: การแก้ไขเรคคอร์ดคอลเลกชัน ณ โหนดการอนุมัติปัจจุบันหลังจากได้รับการอนุมัติ (ไม่บังคับ และมีผลเฉพาะเมื่ออนุมัติเท่านั้น) ครับ/ค่ะ

#การส่งคืน v1.9.0+

ก่อนเวอร์ชัน v1.9.0 การส่งคืนจะใช้ API เดียวกันกับการ "อนุมัติ" และ "ปฏิเสธ" โดยใช้ "status": 1 เพื่อแสดงถึงการส่งคืนครับ/ค่ะ

ตั้งแต่เวอร์ชัน v1.9.0 เป็นต้นไป การส่งคืนจะมี API แยกต่างหากครับ/ค่ะ:

curl -X POST -H 'Authorization: Bearer <your token>' -d \
  '{
    "returnToNodeKey": "<node key>",
  }'
  "http://localhost:3000/api/approvalRecords:return/<record id>"

พารามิเตอร์

  • <record id>: ID ของเรคคอร์ดที่ต้องดำเนินการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • returnToNodeKey: คีย์ของโหนดเป้าหมายที่จะส่งคืน (ไม่บังคับ) ครับ/ค่ะ เมื่อมีการตั้งค่าช่วงของโหนดที่สามารถส่งคืนได้ในโหนดนั้นๆ คุณสามารถใช้พารามิเตอร์นี้เพื่อระบุว่าจะส่งคืนไปยังโหนดใด หากไม่ได้ตั้งค่า พารามิเตอร์นี้ไม่จำเป็นต้องส่งค่า และระบบจะส่งคืนไปยังจุดเริ่มต้นโดยอัตโนมัติเพื่อให้ผู้เริ่มต้นส่งใหม่ครับ/ค่ะ

#การมอบหมาย

curl -X POST -H 'Authorization: Bearer <your token>' -d \
  '{
    "assignee": <user id>,
  }'
  "http://localhost:3000/api/approvalRecords:delegate/<record id>"

พารามิเตอร์

  • <record id>: ID ของเรคคอร์ดที่ต้องดำเนินการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • assignee: ID ของผู้ใช้ที่จะมอบหมายให้ (จำเป็นต้องระบุ) ครับ/ค่ะ

#การเพิ่มผู้ลงนาม

curl -X POST -H 'Authorization: Bearer <your token>' -d \
  '{
    "assignees": [<user id>],
    "order": <order>,
  }'
  "http://localhost:3000/api/approvalRecords:add/<record id>"

พารามิเตอร์

  • <record id>: ID ของเรคคอร์ดที่ต้องดำเนินการอนุมัติ (จำเป็นต้องระบุ) ครับ/ค่ะ
  • assignees: รายการ ID ผู้ใช้ที่จะเพิ่มเป็นผู้ลงนาม (จำเป็นต้องระบุ) ครับ/ค่ะ
  • order: ลำดับของผู้ลงนามที่เพิ่มเข้ามา โดย -1 หมายถึงก่อน "ฉัน" และ 1 หมายถึงหลัง "ฉัน" ครับ/ค่ะ