Build a Procurement Workflow plugin with multi-level approvals. Slug: procurement-workflow.
CAPABILITIES: notifications, automation, send_email
RECORD SCHEMA for purchase_orders: title (string, required), vendor (string, required),
amount (currency, required), department (select: Engineering, Marketing, Sales, HR, Operations),
category (select: Software, Hardware, Services, Supplies, Other),
requester_id (number), status (select: Draft, Submitted, Manager Review,
Finance Review, Director Review, Approved, Rejected, Ordered, Received),
justification (text, required), delivery_date (date).
WORKFLOW on purchase_orders:
- Define all states above
- Transitions: submit (Draft→Submitted), review (Submitted→Manager Review),
approve (Manager Review→Approved for <$5000, or →Finance Review for >=$5000),
finance_approve (Finance Review→Approved for <$50000, or →Director Review),
director_approve (Director Review→Approved),
reject (any pending state→Rejected), order (Approved→Ordered), receive (Ordered→Received)
- approval_chain :approve with levels:
manager (approvers: managers_of requester, required: 1),
finance (approvers: users_with_role Finance, required: 1, condition: amount >= 5000),
director (approvers: users_with_role Director, required: 1, condition: amount >= 50000)
AUTOMATION DEFAULTS:
1. Notify requester when status changes to Approved
2. Notify requester when status changes to Rejected
3. When amount > 10000, auto-set priority to High
NAVIGATION: Dashboard, Purchase Orders, Workflows
Include Workflows UI for managing automation rules.
DASHBOARD: Total spend this month, pending approvals count, POs by status chart,
top vendors by spend, recent POs.
Seed 8 purchase orders across statuses and the automation rules. Include data_version 1.