Files
next-tjwater-drainage-frontend/docs/status-language.md
T

2.0 KiB

状态语言

系统使用五种语义状态。业务模块保留自己的领域枚举,并在展示边界映射到共享 StatusTone,不要让展示文案、接口字符串或 Tailwind 原色类直接决定状态样式。

Tone 用途 典型状态
neutral 尚未开始或不再活动 预约、草案、待办、取消、中止、跳过、未分级
info 正在发生的过程 执行中、提交中、加载中、连接中
success 已完成或健康 完成、在线、正常、已批准
warning 需要关注但未达到异常 关注、降级、待复核、待复令、待确认
danger 已异常或操作失败 异常、失败、离线、高风险、事故、权限拒绝

报告风险

报告风险固定为三档:

  • normal 映射 success,显示“正常”。
  • attention 映射 warning,显示“关注”。
  • critical 映射 danger,显示“异常”。

info 只表示过程,不参与风险等级。不得把 attention 合并到正常或异常。

表达规则

  • 状态标签使用 StatusBadge,小型指示使用 StatusDot,图标节点使用 StatusIcon。
  • 大面积容器只使用柔和背景,禁止实心红色或橙色状态卡片。
  • warning 和 danger 必须同时提供文字或图标,不能只依赖颜色。
  • 只有进行中的状态可以使用 live 或 loading 动效。
  • “复令”是提交处置结果的动作,执行完成但尚未提交时显示“待复令”,使用静态 warning;不得继续显示为“执行中”或提前显示为完成态。
  • 动效必须在 prefers-reduced-motion 下停止。
  • 蓝色选中态属于交互反馈,不作为业务风险状态。
  • 紫色只表示 Agent 身份,不表示未知或更高风险。

地图状态

地图与面板共享语义,但保留独立色值以适应浅色底图、影像底图和白色 casing。 新增地图状态时,应先补充 map-colors.ts,再通过对比度测试验证,不要在图层定义中 写入新的颜色字面量。