This commit is contained in:
2026-08-11 11:41:44 +08:00
parent 953a3b0ed9
commit a5b49293ab
8 changed files with 1430 additions and 201 deletions
+24 -23
View File
@@ -1,7 +1,7 @@
# 财务管理闭环盘点与范围建议
> 盘点日期:2026-08-10
> 当前状态:开发前详细设计,未进入业务开发
> 当前状态:F0/F1 已有 Finance 服务、数据库、权限、Admin/Client 页面和基础接口实现;专项契约与闭环缺口修复中
> 盘点范围:二期入库计费现状、平台后台财务原型、Admin/Client/Firstleg 当前实现
> 结论口径:本文区分“代码已实现”“原型展示”和“建议范围”;原型功能不自动成为开发范围。
@@ -19,6 +19,7 @@
- [财务领域模型与数据字典](财务领域模型与数据字典.md)
- [Firstleg-Finance跨服务契约](Firstleg-Finance跨服务契约.md)
- [F1 人工账单、收款、成本接口契约](F1人工账单收款成本接口契约.md)
- [F1 人工财务契约审查与门禁](F1人工财务契约审查与门禁.md)
- [财务历史迁移与上线验收方案](财务历史迁移与上线验收方案.md)
- [财务F0实施任务拆分](财务F0实施任务拆分.md)
@@ -28,7 +29,9 @@
当前首期已确定采用人工简化方案:平台财务人工填写账单、收款和成本表单并上传凭证,客户只读;首期不做银行自动对账、自动核销任务、复杂审批、客户钱包、发票、供应商在线结算、汇率、月结或总账。完整原型能力仅作为后续扩展参考,不作为本期开工范围。
当前已经实现了从入库测量数据到对客头程费用发布的**业务计费闭环**:
当前已经实现业务计费闭环,并已落地 Finance 独立服务/数据库、人工账单/收款/成本基础接口、平台与客户权限种子、Admin 财务页面和 Client 只读账单页面。当前不是“整体未开发”,而是已进入专项修复和契约收敛阶段。
已具备的基础链路:
```text
测量/称重
@@ -40,18 +43,18 @@
-> 完成入库
```
当前尚未实现从费用到资金结清的**财务闭环**:
当前 F1 已具备的实现链路:
```text
已发布费用
-X-> 对账单
-X-> 应收单
-X-> 收款记录
-X-> 核销
-X-> 结清/反核销
平台财务创建草稿账单
-> 出账冻结
-> 人工登记收款
-> 一笔收款分配多张账单
-> 部分收款/收清状态更新
-> 客户只读查询
```
因此,“已经算出重量、体积和金额”只说明已经有可进入财务流程的费用来源,不代表已经形成应收、账单或收款。现状可以支撑财务一期以“客户应收”为起点继续建设,但不能直接宣称财务管理已经闭环。
当前仍需修复:固定响应 DTO、财务凭证真实上传及 File 校验/关联、整柜体积分摊落库、完整幂等重放、客户账单状态过滤,以及 Admin 调整/作废/账期等操作。完成《F1人工财务契约审查与门禁》中的测试门禁后,才能宣称 F1 人工财务闭环通过验收。
本轮确认“全部都需要做”后,目标范围升级为覆盖原型财务菜单的完整财务域:客户账户、客户应收应付、客户对账单、结算单应收、结算单应付、收付款与核销、费用分析、发票和利润报表。仍建议按依赖关系分阶段交付,避免在应收、应付、钱包和利润各自造一套金额口径。
@@ -125,22 +128,20 @@ Firstleg 已有 `fl_inbound_fee_detail`,包含:
原型还出现了发票抬头、开票日期、汇率、支付方式、收付款凭证号等字段。它们只说明未来可能需要,不代表当前产品已经确认税务、外币折算、资金或发票边界。
当前 Admin 中财务导航整体为隐藏状态,路由指向 `src/prototype/` 占位页;Client 的“应付账单”也标记为 `release: 'prototype'`。这些页面不可作为已交付能力。
当前 Admin 已有正式财务路由、人工账单/收款/成本页面和出账操作,Client 已有正式只读账单页面及线协议适配;但凭证上传仍被界面主动阻止,Admin 尚未接齐草稿修改、调整、作废和客户账期操作,因此只能视为修复中的实现,不能视为已验收交付。
## 五、当前闭环断点
## 五、当前修复中缺口
| 序号 | 断点 | 直接影响 |
|---|---|---|
| 1 | 没有财务费用池的跨订单查询和筛选 | 财务无法集中选择待出账费用 |
| 2 | 没有费用冻结/锁定规则 | 账单生成后上游调整可能改变应收依据 |
| 3 | 没有对账单及唯一编号、账期、版本 | 无法向客户确认一个确定期间的应收集合 |
| 4 | 没有平台财务调整、作废重开和线下异议记录机制 | 客户反馈金额有误时无法在保留历史的前提下纠错 |
| 5 | 没有应收单及到期规则 | 无法管理待收、部分收款、逾期和结清 |
| 6 | 没有收款记录和凭证 | 无法证明资金已到账 |
| 7 | 没有核销与反核销 | 收款不能对应到具体账单或费用,也无法纠错 |
| 8 | 没有跨单据审计链 | 无法从入库费用追溯到对账、收款和核销 |
| 9 | 没有财务级幂等和并发约束 | 重复生成账单、重复核销和超额核销风险无法控制 |
| 10 | 没有财务报表口径 | 原型统计数字无法由真实台账可靠计算 |
| 1 | Finance 仍直接返回 JDBC `Map/List<Map>` | 字段和响应结构未形成稳定 DTO,前端依赖临时适配 |
| 2 | 凭证上传与 File 校验/关联未接通 | 收款和成本表单不能带真实凭证完成保存 |
| 3 | 整柜成本仅登记主记录,尚未生成体积分摊明细 | 柜级清关费、拖车费不能形成可审计的单票成本 |
| 4 | 幂等当前将所有重复键作为冲突 | 同键同参不能返回第一次结果,`PROCESSING` 恢复语义缺失 |
| 5 | 客户查询未在服务端过滤可见状态 | 草稿或作废账单存在泄露风险 |
| 6 | Admin 未接齐账单详情、修改、调整、作废和客户账期 | 平台财务无法在正式页面完成全部人工处理 |
| 7 | 业务错误码仍以通用错误和中文消息为主 | 前端无法稳定区分版本、幂等、凭证和归属错误 |
| 8 | 修订快照已有表和写入逻辑,但缺少查询展示 | 调整历史尚不能由产品和测试人员核对 |
## 六、全量财务规划与交付顺序
@@ -327,6 +328,6 @@ DRAFT -> REVIEWED -> SENT -> CONFIRMED -> CLOSED
1. 由产品/业务填写 F1-F12,冻结首期范围。
2. 形成《客户应收闭环需求确认表》,明确页面、角色、状态和异常处理。
3. 使用《财务管理产品确认表》完成 S1-S8、F0-F4 的产品确认。
4. 服务边界、领域模型草案和跨服务契约草案已经形成;下一步由产品填写 XLSX,按《财务开工门禁与 F0/F1 任务清单》放行 G1/G2,不再重复讨论是否拆服务。
4. 服务边界、领域模型、跨服务契约及 F0/F1 基础实现已经形成;当前按《F1人工财务契约审查与门禁》完成专项修复和测试放行,不再等待产品填写 XLSX 或重复讨论是否拆服务。
5. 形成《客户应收接口与权限契约》,包括错误码、幂等、数据范围和审计事件。
6. 形成《历史费用迁移与上线方案》,避免已有线下结算数据被重复出账。