8.4 KiB
title, aliases, tags, audience, status, sub_feature, last_review, code_version
| title | aliases | tags | audience | status | sub_feature | last_review | code_version | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| prop-acc · meter · 场景 - 高用量异常(漏水/电器故障) |
|
|
|
已发布 | meter | 2026-05-26 | 2026-05-22 |
场景:高用量异常(漏水/电器故障)
业户用量异常(漏水 / 电器故障 / 偷电),系统通过 HighConsumptionReadingsListWidget 在月度抄表数据出来后主动预警,业务人员介入排查,避免账单生成后业户暴击 / 投诉。
典型情境
[!example] 真实情境 5 月底集抄 / 批量抄表完成,王主管打开
MeterDashboard:
HighConsumptionReadingsListWidget显示 本月用量 top 20 的 reading- 其中前 3 名:
业户 表 上月 本月 用量 异常? 张阿姨(12-3-501) 水表 12 吨 800 吨 800 🔴 极度异常(漏水) 陈先生(12-3-502) 电表 200 度 2,800 度 2,800 🔴 异常高(空调故障 / 偷电) 商铺一楼餐厅 电表 1,500 度 3,200 度 3,200 🟡 警告(正常波动?旺季?) 王主管立即处理。
业务人员视角
Widget 显示
HighConsumptionReadingsListWidget(后台 → MeterDashboard):
| 列 | 内容 |
|---|---|
| 业户 / 资产 | 房号 + 业户姓名 |
| 表编号 | meter code |
| 上月用量 | previous reading 推出 |
| 本月用量 | consumption |
| 倍数 | 本月 / 上月 |
| 抄表日期 | read_at |
| 操作 | 链接到 reading 详情 / 查看 / 联系业户 |
排序:按 consumption 降序 top 20(简版实现,详见下方"待补")。
分级处置
| 级别 | 触发 | 处置 |
|---|---|---|
| 🔴 极度异常(>10× 历史平均) | 漏水 / 大型故障 | 立即联系业户 + 派人现场检查 |
| 🔴 高异常(>3× 历史平均) | 设备故障 / 习惯改变 | 联系业户确认 |
| 🟡 警告(>1.5× 历史平均) | 正常波动 / 季节性 | 推送提醒 / 标记观察 |
| 🟢 正常 | < 1.5× | 不处理 |
处理流程(漏水案例)
flowchart TD
A[Widget 显示张阿姨水 800 吨] --> B[王主管联系张阿姨]
B --> C{业户回应}
C -->|"我不知道,你来看看"| D[派维修队上门]
C -->|"啊?我不可能用这么多"| D
C -->|"我装修了用水多"| E[业户接受账单]
D --> F{查到原因?}
F -->|墙内暗水管漏水| G[维修 + 重算账单]
F -->|无可见漏水点| H[换表测试是否表故障]
H --> I{换表后情况}
I -->|新表用量正常| J[确认旧表故障 + 走修正流程]
I -->|新表用量仍异常| K[排查家电 / 业户习惯]
G --> L[与业户协商:走 max 封顶/部分减免/重算]
J --> L
修正账单(若证实表故障)
如果证实是表故障 / 抄表错:
- 走 [replace-broken-meter|换表]
- 旧 reading 已生成 Bill → 走 exception-readings-locked-after-bill 流程
- 重新算正确用量 → 重生成 Bill
- 业户付正确金额
HighConsumptionReadingsListWidget 实现现状
[!info] 当前实现简版,issue.md Q5 已标待升级 当前:按 consumption 降序 top 20,不是统计学意义的异常检测。
issue.md Q5"待补":
- 3σ 异常(对比历史 3 个月平均的标准差)
- 倒走告警(current < previous)
- 0 读数告警(可能表故障)
当前简版的缺陷:
- 排名靠前的可能是商铺 / 工业表(正常用量大),不是真异常
- 漏掉"中等用量但异常波动"的住户(从 12 吨涨到 50 吨,绝对数小但相对倍数高)
- 没区分"业户家用电习惯变了"vs"漏水 / 故障"
业务人员需自行判断(看 Widget 内容 + 历史用量对照 + 联系业户)。
业户视角
您可能收到的联系
物业打电话 / 微信 / 上门:
张阿姨您好,您家本月水量异常高(800 吨,平时 12 吨)。请问您家最近是否有装修 / 漏水 / 大量用水活动?如有疑问,我们可派维修队上门检查。
您要做的
| 情况 | 您要做 |
|---|---|
| 确实在装修 / 大量用水 | 接受账单 + 看是否触发 [[generate-bill-min-max-cap |
| 不知道原因 / 怀疑漏水 | 同意物业派人上门检查 |
| 怀疑表 / 系统错 | 要求看 [[read-with-photo-proof |
检测到漏水后的减免
物业通常会减免(看政策):
- 部分减免(承担一半 / 30%)
- 全免(罕见,看物业宽厚)
- 按"平时月用量"算账(常见)
- max 封顶后业户支付封顶值,差额物业承担
具体看物业与业户的协商 + 物业的"漏水维修保险"理赔。
系统流程
sequenceDiagram
participant 集抄/抄表员
participant 系统
participant Widget[HighConsumptionReadingsListWidget]
participant 王主管
participant 业户
集抄/抄表员->>系统: 推 / 录入本月 reading
系统->>系统: 建 MeterReading + 算 consumption
Note over 系统: 月度数据完成
王主管->>Widget: 打开 MeterDashboard
Widget->>系统: SELECT TOP 20 reading ORDER BY consumption DESC
系统-->>Widget: 显示 top 20 异常清单
王主管->>王主管: 看清单 → 分级处置
loop 每个 🔴 异常
王主管->>业户: 联系 + 排查
alt 漏水 / 故障
王主管->>系统: 走修正流程(换表 / 作废 Bill 重算)
else 业户认账
王主管->>系统: 接受 + 触发 max 封顶减免(若适用)
end
end
高用量的常见原因清单
| 原因 | 业户感知 | 处置 |
|---|---|---|
| 水管漏水(墙内 / 管井) | 业户不知道,直到账单异常 | 派维修队 + 修管子 + 减免 |
| 马桶漏水(节流阀坏) | 业户偶尔听到流水声 | 业户自修 / 物业协助 |
| 空调 24h 不关 | 业户习惯 | 业户调整 / 接受账单 |
| 旧冰箱故障(压缩机一直跑) | 业户不知道 | 业户换冰箱 |
| 电热水器(储热式漏电 / 一直加热) | 业户不知道 | 业户检查 |
| 业户偷电 / 绕表 | 物业 / 国家电网监管 | 法律责任 |
| 抄表错 | (系统层面) | 走 [[exception-readings-locked-after-bill |
| 集抄数据错 | (系统层面) | 同上 |
| 表故障(乱跳) | 业户长期感觉 | [[replace-broken-meter |
| 大型装修 / 大量用水活动 | 业户自知 | 业户接受账单 |
常见问题
[!question] Widget 显示的"top 20"是当月吗? 看 Widget 实现。可能是:
- 本月(
read_at在当月)- 最近 30 天
- 所有未结账 reading
业务上推荐"本月",每月初看一遍 + 月底再看一遍。
[!question] 排查发现是抄表错 + 已经生成 Bill 了怎么办? 走 exception-readings-locked-after-bill 流程:作废 Bill → 修正 reading → 重生成 Bill。复杂,需运维 / 高权限介入。
[!question] 业户漏水但拒不修怎么办? 物业强烈建议 + 法律手段(漏水可能影响楼下邻居,涉及侵权)。系统层面无法干预。
[!question] 商铺 / 工业用户的"高用量"和住宅"高用量"判断标准应该一样吗? 不一样。商铺正常用量本来就大。Widget 当前简版无区分,需业务人员自己判断。
升级建议:Widget 按
asset_type(住宅 / 商铺 / 工业)分别统计 + 各自的"异常阈值"。
[!question] 排查后没找到原因(业户也说没漏水也没新增电器)? 几个可能:
- 业户家有人偷接电(罕见)
- 表故障(漂移)→ 换表观察一个月
- 集抄 / 抄表系统 bug(同时多户异常?排查系统)
[!question] 高用量预警之外,有"用量异常低"(可能业户搬走 / 表故障 0 读数)预警吗? 当前无(只有高用量 widget)。需求详见 issue.md Q5"待补"。
异常分支
- 排查确认是抄表错 → exception-readings-locked-after-bill 修正
- 排查确认是表故障 → replace-broken-meter
- 业户接受账单 → 走 [generate-bill-min-max-cap|max 封顶]
- 待抄表清单(对偶场景)→ audit-meters-needing-reading