Files
lcbp3/docs/ai-knowledge-base/playbooks/dms/rfa-lifecycle.md
T
admin 0240d80da5
CI / CD Pipeline / build (push) Successful in 6m1s
CI / CD Pipeline / deploy (push) Failing after 6m42s
690514:2019 204-rfa-approval-refactor #01
2026-05-14 20:19:21 +07:00

1.9 KiB

// File: docs/ai-knowledge-base/playbooks/dms/rfa-lifecycle.md

Playbook: RFA Lifecycle Management

🔄 Lifecycle Stages

  1. Draft: ผู้สร้างเตรียมเอกสารและอัปโหลดไฟล์
  2. Submitted: ส่งเข้าระบบเพื่อรอการตรวจสอบ (Review)
  3. Reviewing: ทีมที่ปรึกษาหรือหน่วยงานที่เกี่ยวข้องตรวจสอบ
  4. Responded: ให้ความเห็น (Comment) กลับมา
  5. Approved / Rejected: สถานะสุดท้ายของการอนุมัติ
  6. Closed: สิ้นสุดกระบวนการ

🛡️ Business Rules (ADR-001)

  • การเปลี่ยนสถานะต้องใช้ Workflow Engine เท่านั้น
  • ต้องมีการทำ Optimistic Locking ผ่าน @VersionColumn เพื่อป้องกันการอนุมัติพร้อมกัน
  • ทุกการเปลี่ยนสถานะต้องบันทึก Audit Log และ Workflow History
  • หากมีการอัปโหลดไฟล์ใหม่ ต้องย้ายจาก temp ไป permanent และสแกน ClamAV

🛠️ Implementation Steps

  1. ตรวจสอบสิทธิ์ผู้ใช้ผ่าน CaslGuard
  2. ดึงข้อมูล RFA พร้อมสถานะปัจจุบันจาก DB
  3. ตรวจสอบความถูกต้องของสถานะต้นทาง (Source State) และสถานะปลายทาง (Target State)
  4. ทำการ Update ใน Database Transaction
  5. ส่งการแจ้งเตือนผ่าน BullMQ

// Change Log: // - 2026-05-14: Initial RFA lifecycle playbook