labels.ts 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. // 统一显示字典保持所有列表与详情口径一致;未认识的服务端值原样显示便于排错。
  2. export const names: Record<string, string> = {
  3. draft: "草稿",
  4. pending_audit: "审核中",
  5. in_approval: "人工审批中",
  6. approved: "已通过",
  7. rejected: "已驳回",
  8. withdrawn: "已撤回",
  9. "1": "低风险",
  10. "2": "中风险",
  11. "3": "高风险",
  12. queued: "排队中",
  13. running: "执行中",
  14. completed: "已完成",
  15. failed: "失败",
  16. cancelled: "已取消",
  17. low: "低风险",
  18. medium: "中风险",
  19. high: "高风险",
  20. pass: "合规",
  21. partial: "部分完成",
  22. fail: "不合规",
  23. auto_approve: "自动通过",
  24. to_supervisor: "转主管",
  25. to_finance: "转财务",
  26. to_manual: "转人工",
  27. employee: "员工",
  28. supervisor: "主管",
  29. auditor: "财务审计员",
  30. manager: "经理",
  31. admin: "管理员",
  32. warning: "警告",
  33. error: "错误",
  34. critical: "严重",
  35. open: "待处理",
  36. acknowledged: "已确认",
  37. resolved: "已解决",
  38. success: "成功",
  39. degraded: "降级",
  40. skipped: "未完成",
  41. not_applicable: "不适用",
  42. extract: "发票提取",
  43. rule_check: "规则审核",
  44. risk_detect: "风险评估",
  45. make_decision: "审核决策",
  46. feedback: "人工反馈",
  47. approve: "通过",
  48. reject: "驳回",
  49. return: "退回草稿",
  50. system: "系统",
  51. user_input_fallback: "用户填报降级",
  52. vlm: "视觉模型提取",
  53. indexed: "已索引",
  54. not_indexed: "未索引",
  55. ready: "已索引",
  56. unindexed: "未索引",
  57. indexing: "索引中",
  58. };
  59. export const label = (value: unknown): string =>
  60. names[String(value)] || String(value ?? "—");
  61. export const typeName = (value: number): string =>
  62. ({ 1: "差旅", 2: "招待", 3: "办公" })[value] || "—";
  63. export const time = (value: string | null | undefined): string =>
  64. value ? new Date(value).toLocaleString("zh-CN", { hour12: false }) : "—";
  65. export const money = (value: string | number | null | undefined): string =>
  66. value == null
  67. ? "—"
  68. : `¥ ${Number(value).toLocaleString("zh-CN", { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`;