2 Commits

Author SHA1 Message Date
Willie
92f3c6698e meter 子模块 · 轮 2:14 场景 + 知识地图收尾
写 14 个场景到 prop-acc/scenarios/meter/,覆盖 4 类业务:

📦 表管理(4):
- init-new-community-batch(新社区批量建表 + 初始读数 Excel 导入,
  走 MeterInitializationImporter + BaseImporter chunk rollback)
- register-single-meter(单独新增一张表,陈先生厨房分户表)
- replace-broken-meter(换表场景,旧表 5000 → 新表 -R1 后缀 + initial 5000 继承,
  ReplaceMeterAction 完整流程)
- decommission-without-replacement(退役不换表,3 种典型情境:
  房屋拆除 / 商铺撤店 / 法定年限到)

📊 抄表(4):
- read-single-meter-manual(后台单录,李师傅集抄掉线补抄)
- read-batch-via-excel-import(MeterReadingsImporter + 模板下载流程 +
  双义列名 silent corruption 已知风险)
- read-via-iot-remote-source(集抄系统对接,API + 防重放 + 与 deposit/prepaid 集成)
- read-with-photo-proof(物理表头照片,业户争议时关键凭证)

💰 账单生成(3):
- generate-bill-tiered-pricing(progressive 累进算法完整算例 35 吨水的三段计算,
  对比 full-tier 简陋实现)
- generate-bill-with-multiplier(工业表 multiplier=10 算例 + 抄表员录入注意事项)
- generate-bill-min-max-cap(漏水 max 封顶 + 零用量 min 兜底 + 正常范围三情境)

🛡️ 异常/审计(3):
- exception-high-consumption(HighConsumptionReadingsListWidget 预警 +
  分级处置 + 完整排查流程)
- exception-readings-locked-after-bill(双锁机制下的修正流程,当前手工 +
  未来 VoidBillAction 设计目标态,issue.md Q5 待补)
- audit-meters-needing-reading(MetersNeedingReadingListWidget +
  月度完成率 99% 目标 + 月度报告模板)

每篇结构:典型情境 → 业户/抄表员/业务人员视角 → 系统流程(mermaid)→
对比表 / 算例 → 常见问题 → 异常分支 → 相关文档(WikiLinks)。

meter 模块特性在场景中持续强调:
- 物理硬件维度(非抽象账户)
- 不直接产 Receipt(走 Bill 中转)
- 三层业务分层(Calculator + Service + Action)
- 双锁机制(创建即不可改 + 有 Bill 更严)
- 抄表来源 + 拍照存证 + 集抄对接
- progressive 累进 vs full-tier 简陋实现的设计正确性
- 倍率 + 阶梯 + min/max 三层叠加算法

收尾:
- prop-acc/maps/meter-knowledge-map.md:14 场景全部 ,加完成 callout
- prop-acc/maps/knowledge-map.md:meter 行状态改 " 21 篇"
- prop-acc/index.md:同步

meter 子模块完整覆盖:6 概念 + 14 场景 + 1 知识地图 = 21 篇。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-26 00:31:08 +08:00
Willie
898d3a93a7 meter 子模块 · 轮 1:6 概念 + 知识地图 + 导航更新
写 6 个核心概念到 prop-acc/concepts/meter/:
- meter-vs-meter-reading:物理表配置 + 不可变读数流水双对象;与"账户+流水"模式
  对比(主对象有 balance vs 物理硬件配置;直接产 Receipt vs 通过 Bill 中转)
- replacement-chain:replaced_meter_id + 自动 -R1 后缀 + 初始读数继承;
  nextReplacementCode() 算法 + 整链追溯 + ReplaceMeterAction 流程
- multiplier-and-tiered-pricing:倍率(decimal(10,4),工业表 10x/100x)+
  阶梯计价(progressive 累进算法,非 full-tier 简陋实现)+ min/max 封顶
- bill-generation-pipeline:三层分层 Calculator(纯算)→ Service(查费率+找业主+建账)
  → Action(入口);多调用方共用业务层;prop-acc 后续模块的样板
- reading-source-and-photo-proof:MeterReadingSource 2 种(manual/remote)+
  photo_url 拍照存证;业户对账单争议时的凭证依据
- decommission-and-locking:MeterDecommissionReason 5 种 + Reading 双锁机制
  (创建即不可改;有 bill_id 更不可改/删);issue.md Q5 第二轮修复历史

新建子模块知识地图:
- prop-acc/maps/meter-knowledge-map.md:6 概念入口 + 14 场景预占清单 +
  跨子模块对比(meter 与 deposit/prepaid 的核心差异)+ 代码索引

更新导航:
- prop-acc/maps/knowledge-map.md:域总图 meter 行链 meter 知识地图,状态 🟡
- prop-acc/index.md:同步

下一轮:14 个场景文档(meter/scenarios/),按本知识地图骨架填充。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-25 23:56:41 +08:00