1.9 KiB
1.9 KiB
// File: docs/ai-knowledge-base/playbooks/dms/rfa-lifecycle.md
Playbook: RFA Lifecycle Management
🔄 Lifecycle Stages
- Draft: ผู้สร้างเตรียมเอกสารและอัปโหลดไฟล์
- Submitted: ส่งเข้าระบบเพื่อรอการตรวจสอบ (Review)
- Reviewing: ทีมที่ปรึกษาหรือหน่วยงานที่เกี่ยวข้องตรวจสอบ
- Responded: ให้ความเห็น (Comment) กลับมา
- Approved / Rejected: สถานะสุดท้ายของการอนุมัติ
- Closed: สิ้นสุดกระบวนการ
🛡️ Business Rules (ADR-001)
- การเปลี่ยนสถานะต้องใช้ Workflow Engine เท่านั้น
- ต้องมีการทำ Optimistic Locking ผ่าน
@VersionColumnเพื่อป้องกันการอนุมัติพร้อมกัน - ทุกการเปลี่ยนสถานะต้องบันทึก Audit Log และ Workflow History
- หากมีการอัปโหลดไฟล์ใหม่ ต้องย้ายจาก
tempไปpermanentและสแกน ClamAV
🛠️ Implementation Steps
- ตรวจสอบสิทธิ์ผู้ใช้ผ่าน
CaslGuard - ดึงข้อมูล RFA พร้อมสถานะปัจจุบันจาก DB
- ตรวจสอบความถูกต้องของสถานะต้นทาง (Source State) และสถานะปลายทาง (Target State)
- ทำการ Update ใน Database Transaction
- ส่งการแจ้งเตือนผ่าน
BullMQ
// Change Log: // - 2026-05-14: Initial RFA lifecycle playbook