Documents the full "ระบุผู้อนุมัติ → ส่งอนุมัติ → อนุมัติ 2 ลำดับ → ส่งแก้ไข" mechanism
as implemented for request_expense/type_id=2 (request_approve_type "04") — data model,
state table, each flow's actual code with comments, and a checklist of gotchas
(display_name_th exact-match matching, denormalized name fields being null,
the is_sent gate) to watch for when adding an equivalent approval flow for
คำขอแผ่นดิน on a new entity.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0153wBt23EjW125ZsADwWVAs