fujian_water_biz_doc/docs/guides/REV004_IMPLEMENTATION_HANDOFF.md

10 KiB
Raw Blame History

REV-004 全量账务实现分发清单

1. 文档目的

本文用于将 REV-004 全量账务领域的当前正式口径,整理为可直接分发给前后端实现 Agent 的任务清单、需求边界与协作约束,避免后续实现阶段再次回到“一期最小闭环”或“旧表整表平移”的摇摆状态。

2. 当前统一口径

2.1 当前正式事实

  • 当前正式统一入口:IF-REV-007
  • REV-004 已在概要、详设、数据库、接口四层正式文档中完成首轮收口
  • 当前正式表达仍采用:
    • 当前事实
    • 目标设计
    • 历史只读 / 映射层 三层分离口径

2.2 当前目标对象范围

当前全量账务对象范围包括:

  • PrepaidRefund
  • RedinkRecord
  • WrittenoffAdjust
  • PriceDiffAdjust
  • LateFeeReduce
  • BadDebtRecord
  • SplitAdjust
  • 特殊开账 / 特账
  • RefundBill
  • CrossCycleWaterRecord

2.3 当前设计约束

  1. 不得把目标设计写成当前已全部实现事实。
  2. 当前统一入口仍是 IF-REV-007,不能在未明确批准前直接改成多套正式专属接口编号。
  3. 旧系统对象必须分层承接:
    • 在线统一骨架
    • 独立业务对象
    • 查询投影对象
    • 历史只读 / 映射对象
  4. Archive 原始资料为证据来源,不作为当前实现修改目标。

3. 分发给后端 Agent 的功能清单

BE-01 统一账务处理入口扩展

目标 扩展 IF-REV-007,使其从一期五类场景提升为可承接全量账务对象的统一入口。

需求 后端统一入口需支持以下对象类型:

  • PREPAID_REFUND
  • REDINK_RECORD
  • WRITTENOFF_ADJUST
  • PRICE_DIFF_ADJUST
  • LATE_FEE_REDUCE
  • BAD_DEBT_RECORD
  • SPLIT_ADJUST
  • SPECIAL_BILLING
  • REFUND_BILL
  • CROSS_CYCLE_WATER

最小输入要求

  • chargeId
  • objectType
  • adjustType(兼容保留)
  • adjustAmount
  • adjustUsage
  • sourceTradeNo
  • relatedBizNo
  • reasonCode
  • approvalRequired
  • remark
  • attachmentList
  • operatorId

最小输出要求

  • adjustmentNo
  • chargeId
  • objectType
  • resultStatus
  • writeBackStatus
  • approvalRequired
  • approvalStatus
  • resultObjectNo
  • msg

验收重点

  • IF-REV-007 仍是当前统一入口
  • 不要求一次性拆专属接口
  • objectType 成为统一对象表达核心字段

BE-02 账务对象服务层分派机制

目标 建立 objectType -> handler/service 分派机制。

需求 至少按对象族拆分内部处理逻辑:

  • 预存退款处理
  • 红冲处理
  • 已销调整处理
  • 价差调整处理
  • 违约金减免处理
  • 坏账处理
  • 分账调整处理
  • 特账 / 特殊开账处理
  • 退款结果对象处理
  • 跨周期水量支撑处理

验收重点

  • 外部继续统一入口
  • 内部分派清晰
  • 不再把所有对象混成单一“金额调整”逻辑块

BE-03 审批边界承接

目标 统一承接审批能力位,而不是直接落完整 BPM。

需求 至少保留:

  • approvalRequired
  • approvalStatus
  • legacyTaskId
  • legacyStepId
  • legacyFlowRemark

当前对象分层要求

  • 倾向独立审批流对象:
    • PrepaidRefund
    • BadDebtRecord
  • 当前先保留审批能力位:
    • WrittenoffAdjust
    • PriceDiffAdjust
    • LateFeeReduce
    • SplitAdjust
    • RedinkRecord
  • 不单独审批:
    • RefundBill
    • CrossCycleWaterRecord

验收重点

  • 承接审批语义即可
  • 本轮不要求直接接完整 BPM 引擎

BE-04 统一留痕能力增强

目标 强化 biz_operat_log / biz_operat_log_detail 的账务承接能力。

需求 至少留痕:

  • 对象类型
  • 目标账单
  • 原交易引用
  • 原业务单号
  • 原因说明
  • 金额/水量前后差异
  • 审批状态
  • 操作人
  • 操作时间
  • 附件依据

验收重点

  • 各账务对象都能统一追溯
  • 能支撑历史查询和迁移核查

BE-05 数据库统一骨架承接

目标 继续以 biz_charge / biz_charge_detail 为统一骨架,不盲目整表平移。

需求 后端实现需遵循:

  • 新发生业务优先挂统一骨架
  • 不强制每个对象立刻单独建表
  • 对目标对象允许先通过:
    • 统一骨架
    • 目标字段组
    • 历史映射 进行承接

特别要求 需重点考虑后续承接的目标对象:

  • AccountingWorkflowRef
  • AccountingLegacyMapping

BE-06 历史只读 / 映射层查询承接

目标 旧系统细粒度台账不能丢,需要有后端查询承接。

至少保留查询能力的对象

  • 红冲记录
  • 预存退款历史
  • 已销调整历史
  • 价差调整历史
  • 分账调整历史
  • 违约金减免历史
  • 坏账历史
  • 退款账结果
  • 跨周期水量
  • 实时收费日志
  • 对账日志
  • IC 卡账务

验收重点

  • 不要求这些对象都转成在线主写表
  • 但必须可查、可追溯、可迁移验收

BE-07 统一查询出口能力

目标 准备两类查询能力:

第一类:业务对象查询

面向:

  • PrepaidRefund
  • RedinkRecord
  • WrittenoffAdjust
  • PriceDiffAdjust
  • LateFeeReduce
  • BadDebtRecord
  • SplitAdjust
  • RefundBill

第二类:历史只读 / 投影查询

面向:

  • 实时收费
  • 对账日志
  • 柜台结账
  • IC 卡账务
  • 历史账务台账

验收重点

  • 至少按 objectType 可区分
  • 支持汇总对账 + 明细追溯

4. 分发给前端 Agent 的功能清单

FE-01 统一账务处理入口页面改造

目标 前端继续使用统一账务处理入口,但支持全量对象类型。

需求 至少支持:

  • 对象类型选择 / 识别
  • 按对象动态显示字段
  • 审批状态展示
  • 处理结果展示
  • 账单回写状态展示

最低对象类型支持

  • 预存退款
  • 红冲
  • 已销调整
  • 价差调整
  • 违约金减免
  • 坏账
  • 分账调整
  • 特账
  • 退款账结果查询
  • 跨周期水量查询

FE-02 对象查询页 / 结果页分层

目标 查询页按两层口径组织。

业务对象查询页

至少展示:

  • 单号
  • 对象类型
  • 关联账单
  • 状态
  • 审批状态
  • 金额 / 水量差异
  • 时间

历史只读查询页

至少展示:

  • 原单号
  • 旧系统标识
  • 来源时间
  • 映射状态
  • 查询摘要

验收重点

  • 不把历史只读查询和在线处理页混成一个页面

FE-03 审批状态展示

目标 统一展示审批边界,但不假设 BPM 已完整落地。

需求 至少展示:

  • 是否需要审批
  • 当前审批状态
  • 审批意见摘要(如有)
  • 历史流程引用摘要(如有)

FE-04 统一结果表达

目标 在 REV-004 页面中统一表达处理结果。

至少统一展示

  • resultStatus
  • writeBackStatus
  • approvalStatus
  • resultObjectNo
  • msg

验收重点

  • 不再只显示“成功 / 失败”
  • 要能区分:
    • 处理成功
    • 待审批
    • 回写失败
    • 部分成功

FE-05 历史迁移核查页 / 对账页

目标 给迁移验收和历史比对保留前端展示入口。

建议查询维度

  • 客户号
  • 手机号
  • 表号
  • 账期
  • 营业所
  • 渠道
  • 业务单号
  • objectType
  • 状态
  • 时间范围

验收重点

  • 能看汇总
  • 能点进明细
  • 能定位单据级差异

5. 联调 / 共同实现清单

JOINT-01 枚举与字段统一

前后端统一:

  • objectType
  • adjustType
  • resultStatus
  • writeBackStatus
  • approvalStatus

JOINT-02 当前事实与目标设计分层

必须明确:

  • 哪些对象当前只是在统一入口下承接
  • 哪些对象只是目标设计命名
  • 哪些对象当前只支持查询,不支持在线提交

JOINT-03 历史查询口径统一

统一以下查询口径:

  • 业务对象查询
  • 历史只读查询
  • 投影查询
  • 映射查询

JOINT-04 迁移验收维度统一

统一核查维度:

  • 对象类型
  • 状态
  • 审批状态
  • 原单号 / 新单号
  • 金额 / 水量
  • 时间
  • 关联账单

6. 建议拆给其他 Agent 的任务包

Agent A后端统一入口改造

负责:

  • IF-REV-007 输入输出扩展
  • objectType 承接
  • 统一 handler 分派机制

Agent B后端账务查询与历史兼容

负责:

  • 业务对象查询出口
  • 历史只读 / 投影查询出口
  • 映射层查询支撑

Agent C后端审批 / 留痕承接

负责:

  • approvalRequired
  • approvalStatus
  • 操作留痕增强
  • 历史流程字段承接

Agent D前端统一账务处理页面

负责:

  • 统一入口页面改造
  • 对象差异化表单展示
  • 统一结果展示

Agent E前端账务查询与迁移核查页面

负责:

  • 业务对象查询页
  • 历史只读查询页
  • 差异定位展示

Agent F联调与口径校验

负责:

  • 枚举值统一
  • 字段命名统一
  • 页面与接口回包一致性校验
  • 历史查询与迁移验收口径校验

7. 最小交付顺序建议

  1. 后端统一入口改造
  2. 后端查询出口改造
  3. 前端统一入口页面改造
  4. 前端查询页改造
  5. 审批 / 留痕补强
  6. 迁移验收 / 历史核查联调

8. 给其他 Agent 的任务提示模板

任务背景
当前正在推进 REV-004 全量账务领域实现,对应正式文档已完成四层回写:详设、数据库、接口、概要。当前正式统一入口为 IF-REV-007目标是在不破坏当前统一入口事实的前提下承接全量账务对象。

实现约束
1. 不要把目标设计写成当前已完全实现事实
2. 当前统一入口仍是 IF-REV-007
3. 全量对象包括:
   - PrepaidRefund
   - RedinkRecord
   - WrittenoffAdjust
   - PriceDiffAdjust
   - LateFeeReduce
   - BadDebtRecord
   - SplitAdjust
   - 特殊开账 / 特账
   - RefundBill
   - CrossCycleWaterRecord
4. 历史对象需区分:
   - 在线统一骨架
   - 独立业务对象
   - 查询投影
   - 历史只读 / 映射层

请完成
- 你负责的子任务:[填写 Agent A/B/C/D/E/F 的任务]
- 输出:
  1. 变更清单
  2. 实现口径说明
  3. 风险点
  4. 与正式文档是否一致

文档依据
- docs/design/02_Detailed_Design/12_REV_Detailed.md
- docs/design/03_Technical_Design/01_Database_Design.md
- docs/design/03_Technical_Design/03_Interface_Design.md
- docs/design/01_Overview/03_Summary_Design.md
- docs/guides/REV004_FULL_ACCOUNTING_DOMAIN_DESIGN.md

9. 参考文档

  • docs/design/02_Detailed_Design/12_REV_Detailed.md
  • docs/design/03_Technical_Design/01_Database_Design.md
  • docs/design/03_Technical_Design/03_Interface_Design.md
  • docs/design/01_Overview/03_Summary_Design.md
  • docs/guides/REV004_FULL_ACCOUNTING_DOMAIN_DESIGN.md