# 财务开工门禁与 F0/F1 任务清单 > 版本:V1.0 > 日期:2026-08-10 > 当前阶段:开发前详细设计 > 结论:技术方案可继续;业务开发须按门禁逐项放行 ## 一、总控结论 Finance 的服务拆分、独立数据库、服务内部模块边界和 Firstleg 协作方式已经技术确认,可以继续做详细设计和契约测试准备。 F0 的平台主体、首期仅 RMB/CNY、自定义账期、编号、费用冻结、无历史迁移、客户角色和首期简化审批已经确认。当前采用人工简化方案:账单、收款、成本均由平台财务填写表单并上传凭证;客户账户、发票、供应商在线应付、银行接口、复杂审批和月结首期不做。原表状态已归一为 25 项已确认、7 项暂缓。详见[产品确认版差异与剩余待确认](财务管理产品确认版差异与剩余待确认.md)。 ## 二、文档交付状态 | 材料 | 状态 | 作用 | |---|---|---| | 财务服务边界设计 | 已完成 | 确认 `finance-service`、`baiyue_finance`、9203 预留和部署改造清单 | | 财务管理产品确认表/XLSX | 部分已确认 | 会议继续填写剩余业务项;技术结论单独列示 | | 财务领域模型与数据字典 | 草案完成 | F0/F1 模型、表和约束;未确认口径显式标记 | | Firstleg-Finance 跨服务契约 | 草案完成 | 事件、快照查询、幂等、重试、权限和契约测试 | | 财务历史迁移与上线验收方案 | 首发不启用历史迁移 | 保留未来补迁参考;首发使用其中 F0/F1 灰度和验收部分 | ## 三、分阶段开工门禁 ### G0:详细设计门禁 可立即进行。条件已满足: - 独立服务/独立库结论已记录; - Finance 与 Firstleg 的数据归属和禁止事项已记录; - 领域模型、跨服务契约、迁移验收方案已有草案; - 产品待确认项与技术结论已分离。 G0 允许:完善 API/OpenAPI、数据库迁移草案、契约测试样例、页面线框和任务拆分;不允许写入生产财务数据。 ### G1:F0 财务底座开发门禁 进入 F0 开发前必须满足: 1. 产品确认表中的 F0 主体/账套、往来单位、币种精度、汇率预留、期间、编号、来源入池、权限审计和历史迁移口径已填写,或明确书面暂缓方案。 其中 F0-11“一客户企业=一个对客结算对象”已确认;客户子用户仍不成为新的财务主体。 2. `finance-service` 的模块目录、端口、数据库名、Nacos 配置和 Gateway 路由完成技术评审。 3. 事件信封、来源版本、Inbox/Outbox、幂等冲突和内部快照查询契约冻结。 4. Finance 权限码、客户范围校验、平台员工操作范围和审计事件清单冻结。 ### G2:F1 客户应收开发门禁 进入 F1 前必须满足: - 账单聚合维度(首期固定 RMB/CNY)和账期计算规则冻结; - 平台出账、关闭、重开和线下异议录入状态冻结;客户首期只读; - 应收生成节点、人工收款表单字段、凭证关联和到期日冻结;首期不实现复杂多对多核销模型; - 预收、多收、手续费、退款、反核销的处理方式冻结; - 至少准备一组真实或脱敏费用来源样本,能够完成费用→账单→应收→收款→核销回归。 ### G3/G4:F2-F4 门禁 供应商应付、客户账户、发票、费用分析和利润必须分别满足产品确认表中的阶段门禁。没有供应商成本凭证、资金性质、税务主体、汇率和分摊口径时,只能保留预留模型和页面草案。 ## 四、F0/F1 任务清单 | 编号 | 任务 | 产出 | 依赖 | 放行标准 | |---|---|---|---|---| | F0-T01 | 创建 Finance 服务骨架 | `finance/`、Maven 模块、启动类、健康检查 | G1-2 | 独立构建/启动,不改 Firstleg 数据库 | | F0-T02 | 建立 Finance 数据库与迁移 | `baiyue_finance` 表结构、迁移脚本、版本记录 | F0-T01 | 无跨库外键/Join;迁移可重复执行 | | F0-T03 | 财务基础主数据 | 主体、账套、币种、期间、编号、往来单位快照 | 产品 F0 | 关闭期间、币种和编号规则服务端生效 | | F0-T04 | 来源池与事件消费 | Inbox、来源池、快照、事件结果查询 | 契约冻结 | 重复/乱序/重试/冲突均有可验收结果 | | F0-T05 | 财务权限与审计 | 权限码、客户范围、操作审计和高风险操作保护 | G1-3 | 越权和反核销等操作被服务端拒绝并留痕 | | F1-T01 | 应收费用池 | 跨入库单筛选、排除原因、来源版本锁定 | F0-T04 | 一条有效来源只能进入一张有效账单 | | F1-T02 | 客户对账单 | 生成、复核、发送、关闭、平台重开/调整、线下异议录入 | 产品 F1 | 状态迁移和版本并发校验完整 | | F1-T03 | 应收单 | 应收金额、已核销额、余额、到期/逾期 | F1-T02 | 账单与应收金额可追溯且不可覆盖历史 | | F1-T04 | 收款与核销 | 收款登记、多对多核销、反核销 | 产品 F1 | 禁止跨币种、超额和重复核销 | | F1-T05 | 客户侧账单 | 客户只读查看、余额和收款记录 | F1-T02/F1-T04 | 客户不可见内部备注、供应商成本和内部附件 | | F1-T06 | F1 回归验收 | 正常、重复、并发、越权、冲销、迁移案例 | 以上任务 | 通过迁移与上线验收方案中的 F0/F1 用例 | ## 五、当前可立即执行与必须等待 ### 现在可以继续 - 把草案契约转换为 OpenAPI/事件契约测试样例; - 完善 F0/F1 数据字典、状态转移表和权限矩阵; - 设计 Finance Admin/Client 页面和空态、错误态、线下异议录入态; - 准备脱敏历史费用样本与迁移校验脚本设计; - 按 F0-T01~F0-T05 拆解开发任务,但暂不合入业务代码。 ### 必须等待产品确认 - 生产账单、应收、收款、核销的正式业务规则; - 客户账户、发票、供应商应付和利润的正式口径; - 历史费用是否迁移、线下已结算排除台账和灰度客户范围。 ## 六、总控放行结论 当前状态为:**G0 已通过,G1/G2 待产品确认后放行。** 这意味着可以继续做开发前详细设计和可逆的契约/测试准备;产品回传 XLSX 并冻结 F0/F1 后,即可进入 `finance-service` 骨架、独立数据库和客户应收闭环开发。