财务账务一致性与回归修复
背景
修复组合支付补尾款时订单已付金额覆盖、账单明细投影缺失、管理端营业额混入非销售资金流,以及财务页面旧入口和 E2E 契约失效的问题。
不直接写入当前连接数据库的历史记录;历史账单只通过显式执行的 Artisan 命令补齐缺失明细。
关联规格:报表中心方案。
范围与验收
- [x] 组合支付后以余额结清尾款时,订单与账单的已付金额均为账单全额。
- [x] 推荐奖励、扣款与退款红字账单创建后都有
invoice_items投影。 - [x] 营业额、月度趋势和商品占比不统计充值、扣款、推荐奖励,退款仍可抵减收入。
- [x] 管理端保留已记录的旧财务入口兼容重定向,财务 E2E 通过。
- [x] 历史投影补齐仅在命令携带
--execute时写入,默认仅报告候选数。
实施步骤
- 修复支付完成后的订单金额投影,并补充组合支付回归。
- 统一仪表盘销售收入筛选条件并覆盖统计口径。
- 补齐新增账单的明细投影,提供受保护的历史补齐命令。
- 恢复管理端兼容路由并更新页面真实断言。
- 运行受影响测试、构建、财务 E2E 与文档校验。
风险与回滚
- 收入口径变化会修正既有报表数值;变更仅排除已定义的非销售资金流,退款红字保留。
- 历史补齐命令不会自动执行,执行前应在目标环境先查看默认报告并备份。
- 兼容路由只重定向至现有页面,可通过移除对应路由回滚。
进度
- [x] 完成问题定位与实现方案确认。
- [x] 完成后端账务和投影修复。
- [x] 完成管理端兼容与 E2E 修复。
- [x] 完成受影响范围验证;全量后端回归仍有 26 项既有调度、日志、通知、服务详情和插件数据隔离失败,未涉及本次财务文件。
决策日志
| 日期 | 决策 | 原因 |
|---|---|---|
| 2026-08-04 | 排除充值、扣款、推荐奖励 | 它们属于资金流或奖励,不属于商品销售收入;退款保留以抵减已确认收入。 |
| 2026-08-04 | 历史投影使用显式命令补齐 | 避免在未知环境的数据库上自动修改历史账务数据。 |
| 2026-08-04 | 恢复旧入口重定向 | 迁移台账和现有 E2E 都将旧地址定义为兼容入口。 |
| 2026-08-05 | 保持计划 active 并记录全量基线失败 | 财务范围验收已完成,但当前工作区既有跨域测试失败,不能将全量回归误报为绿色。 |
| 2026-08-12 | 归档至 completed/,status 改为 completed | 财务范围验收已全部达成;26 项全量回归基线失败为既有跨域问题,与本次财务改动无关,作为遗留风险继续由对应模块跟踪。 |
