feat(server): 工作流扩展 leave 实体骨架(F24)

- workflow_instances 解耦 reimbursement FK:新增 reimbursement_id/leave_request_id + 回填迁移
- 新增 leave_requests 表与 /api/leave-requests 最小链路(create/submit)
- workflow approve/reject/return 支持 leave 状态更新;transfer 非报销任务禁用
- seed-config 增加 leave workflow definition;更新 v3 CSV 状态推进
这个提交包含在:
2026-02-09 21:24:53 +08:00
父节点 3cc3013d5a
当前提交 70f4d729f0
共修改 9 个文件,包含 695 行新增和 132 行删除
+2
查看文件
@@ -19,6 +19,7 @@ const meRoutes = require("./routes/me");
const reimbursementRoutes = require("./routes/reimbursements");
const invoicePoolRoutes = require("./routes/invoicePool");
const workflowRoutes = require("./routes/workflow");
const leaveRoutes = require("./routes/leave");
const delegationRoutes = require("./routes/delegations");
const auditRoutes = require("./routes/audit");
const usersRoutes = require("./routes/users");
@@ -215,6 +216,7 @@ async function buildApp() {
await app.register(reimbursementRoutes, { prefix: "/api" });
await app.register(invoicePoolRoutes, { prefix: "/api" });
await app.register(workflowRoutes, { prefix: "/api" });
await app.register(leaveRoutes, { prefix: "/api" });
await app.register(delegationRoutes, { prefix: "/api" });
await app.register(auditRoutes, { prefix: "/api" });
await app.register(usersRoutes, { prefix: "/api" });