chore: Airwallex 打款权限收敛到 finance (admin 退场)
之前前端按钮无任何 role 检查(只看是否当前节点审批人),后端 requireRole 也允许 admin。改完:
- 前端按钮加 isFinance(user) 门 — admin 没有 finance 角色就看不到
- 后端 finance 中间件去掉 'admin',7 个写接口同步生效 (/balances /quotes/create /beneficiaries/create|update|delete /transfers/create|cancel)
- useUserStore 新增 isFinance helper + FINANCE_ROLE_KEY 常量,跟 isAdmin 平级
破坏性变更:线上若有纯 admin 账号(无 finance 角色)在直接调这些写接口, 改完即返回 403。合规上跟"打款是财务专属流程"的要求对齐。
Co-Authored-By: Claude Opus 4.7 (1M context) noreply@anthropic.com