主题
工程投资管理 · 需求分析文档
文档版本:0.10 | 最近核对日期:2026-09-27
本文面向业务确认、产品设计、实现和验收,是工程投资管理模块六类交付文档中的正式需求分析文件,也是本模块当前唯一的业务基线正文。
本文是本模块唯一的业务基线正文。原型表达的业务要求保留为业务事实,视觉细节和界面示例不作为业务规则;对原型未说明、但用户授权按推荐默认确定的口径,已依据平台既有契约和同级模块先例在第 8.2 节记录决策及理由。本文说明目标行为;具体实现与验收状态以代码、数据库回读及测试报告的最新证据为准。字段矩阵、接口参数、类名与组件实现进入后续设计与数据库资料,本文不复制。
文档控制
| 项目 | 内容 |
|---|---|
| 模块名称 | 工程投资管理 |
| 实现进度说明 | 需求基线与推荐默认已确定;实现和验证边界见测试报告 |
| 编写日期 | 2026-09-21 |
| 受测代码状态 | 2026-09-27 main 工作区;标志值及月份列映射修复后后端编译通过,API 主链路和计划调整链路通过;浏览器页面未验收 |
| 业务确认人 | 用户授权按推荐默认确定(2026-09-27) |
| 原型或资料来源 | 《工程投资管理原型截图》21 张页面图(2026-09-20 16:07—16:22,桌面「工程投资管理」目录);原功能架构图历史规划(工程部讨论版,2026-08-26)(工程投资监管:投资计划、投资实施,12 月批次) |
| 关联文档 | 概要设计;平台基线 业务地图、公共开发约定 |
本文是当前业务基线;计划、下达、月报及计划调整的 API 主链路已通过端到端验证,真实登录后的页面交互仍需页面证据,见测试报告。
1. 背景与目标
1.1 业务背景
- 当前问题:年度投资计划的上报、确认与下发分散在线下表格与红头文件中流转,计划金额按项目、责任单位与月份的分解缺少统一台账,投资实施的实际完成情况按月度口头或线下汇总,计划与实际的对照、完成率计算和跨年度追溯均依赖人工核算。
- 产生原因:原功能架构图历史规划(工程部讨论版,2026-08-26)将本模块列为 12 月上线批次;当前开发库无本模块菜单(
SYS_MENU无投资相关记录)、无业务表(库内无INVEST相关表)、无流程定义,代码库后端无投资相关包、前端无投资相关页面,属未启动模块。 - 影响对象:分公司/经办部门的计划填报经办人与负责人、交建公司经办人、工程管理部经办人及负责人、按责任单位/部门承接计划的责任部门经办人、查看台账的集团与公司管理人员。
1.2 建设目标
- 在「工程投资管理」一级菜单下建立「投资计划」(投资计划上报、投资计划确认)与「投资实施」两类业务入口,承载年度投资计划的逐级上报、确认下发与月度投资实施上报。
- 以「投资计划上报 → 上报确认与调整 → 红头文件下发 → 下发计划修改 → 实施月度上报」组成可追溯的年度投资管理链路,计划与实施两条数据链在项目与责任单位/部门维度上可对照。
- 以项目明细 + 责任单位/部门分解 + 次年 1—12 月金额的结构承载计划分解,以月度计划与实际完成承载实施跟踪,完成率按季度、半年、前三季度和全年汇总。
2. 建设范围
2.1 本期包含
- 投资计划上报:年度投资计划的整单填报(项目明细、责任单位/部门分解、次年 1—12 月计划金额)、明细批量上传与模板下载、暂存/提交与选择审批人员;
- 投资计划上报台账:查询条件、六个年度汇总指标、明细清单(含次年建设阶段与市级重点标识的可编辑下拉)、新增/修改/删除/导出;
- 投资计划确认台账:在相同查询与汇总口径上增加「是否上报一致」列与「调整计划」动作,并提供下发计划入口;
- 投资计划下发:以年度为维度维护红头文件台账(一条记录可含多个文件),以及下发填报(计划项目、责任单位/部门、分公司经办人、备注、红头文件上传);
- 下发计划修改:沿用上报明细结构,计划金额由台账带出,提交时选择工程管理部链路审批人员;
- 投资实施台账:按项目与责任单位/部门展示年度计划、月度计划与实际完成、月度与累计完成率,并提供实施上报与上报记录入口;
- 投资实施上报:按月度填报计划本月投资与实际完成投资,提交时选择工程管理部链路审批人员;
- 投资实施上报记录:按上报月份归档历史上报(计划、实际完成、上报前后累计完成、上报经办人、上报申请时间),支持详情/修改/删除;
- 页面与权限:一级菜单、目录层级、台账与表单页面、三段式权限码、角色授权、流程定义 JSON 与办理页路由注册;
- 平台复用:Warm-Flow 流程与办理工作台、文件服务(红头文件与批量上传附件)、字典、项目/线路主数据、部门与用户。
2.2 明确不做
以下范围没有业务资料或其他需求来源,本期不纳入,也不据「系统一般都有」补建:
- 站内信/短信待办提醒;
- 导出列的定制化配置;
- 投资完成情况的图形化看板、驾驶舱或指标图表;
- 与财务、资金支付、合同或造价系统的对接与数据回写;
- 项目主数据、部门与用户、字典与权限授权的维护;
- 平台级流程能力(转办、委托、加签、减签、抄送)在业务页面内重复实现,按平台既有入口使用。
2.3 已确认的技术约束
以下约束来自平台既有契约,属可沿用的适用基线,本模块实现时不得突破:
- 权限必须后端校验,权限码采用
模块:资源:动作三段式,后端注解、菜单权限串与前端指令逐字一致,前端隐藏按钮不代替鉴权; - 大整数 ID 前端保持
string | number原始值,禁止Number()、parseInt()与一元+; - 数据库查询、DDL 与验证统一通过项目 MCP 访问开发库;仓库不保存业务
.sql文件; - 状态、金额、单位与字典值必须在契约中明确;金额单位为亿元,库内精度与比例口径见 R-EI-025 与 Q-EI-008;
- 流程与审批复用平台 Warm-Flow,节点办理人一律「选人」,不使用部门/角色待办池;
- 记录级权限与只读口径按平台基线:草稿仅创建者或具备管理权限者可编辑删除,进行中仅当前处理人可办理,终态只读。
3. 用户角色与使用场景
| 角色 | 使用目的 | 前置条件 | 主要结果 |
|---|---|---|---|
| 分公司/经办部门计划填报经办人(发起经办人) | 填报本单位年度投资计划、上传明细、暂存与提交 | 具备投资计划上报的新增与提交权限、具有所属部门归属 | 形成投资计划上报单(草稿或已提交) |
| 经办部门副部长 | 在上报链路中办理节点 | 提交时被选为下一办理人 | 通过或退回至发起人 |
| 经办部门负责人 | 在上报链路中办理节点 | 提交时被选为下一办理人 | 通过或退回至发起人 |
| 交建公司经办人 | 在上报与下发链路中办理节点 | 被选为当前节点办理人 | 通过或退回 |
| 工程管理部经办人 | 在下发计划修改与实施上报链路中办理节点 | 被选为当前节点办理人 | 通过或退回 |
| 工程管理部副部长 | 在下发计划修改与实施上报链路中办理节点(原型为非必填选择) | 被选为当前节点办理人 | 通过或退回 |
| 工程管理部部长 | 在下发计划修改与实施上报链路中办理节点 | 被选为当前节点办理人 | 通过或退回 |
| 工程管理部分管领导 | 在下发计划修改链路的末端节点办理 | 被选为当前节点办理人 | 通过或退回 |
| 计划确认岗(交建公司/集团侧) | 查看上报确认台账、判断是否上报一致、调整计划并下发红头文件 | 具备计划确认与下发权限 | 形成下发记录与红头文件台账 |
| 分公司经办人(下发接收) | 接收下发的年度投资计划并修改 | 在下发表单中被选为分公司经办人 | 形成下发计划修改单 |
| 实施上报经办人 | 按月度填报计划与实际完成投资 | 具备投资实施上报权限 | 形成月度上报记录 |
| 查看人员 | 台账查询、明细查看与导出 | 具备对应页面权限 | 只读查看授权范围内数据 |
| 系统管理员/流程管理员 | 流程实例维护 | 具备平台流程维护权限 | 流程实例处置 |
「发起单位」「发起部门」「责任部门」均从 SYS_DEPT 组织树选择,以各自的组织节点 ID 与名称快照保存;发起部门默认当前用户所属部门,审批人与接收经办人通过平台用户选择器选择。该默认不新建组织主数据,也不推导跨部门数据隔离(Q-EI-002、Q-EI-005)。
4. 核心业务场景
4.1 年度投资计划上报(整单填报 + 明细批量导入)
- 经办人在「投资计划上报」台账点击「新增」,填写基准上报年度 N;系统将目标计划年度设为 N+1,进入「工程建设投资计划上报」表单;
- 填写头部字段:上报年度、发起单位、发起部门、发起经办人;六项汇总值(所有工程项目总投资、总预备费、本年预计完成总投资、市级重点建设项目总投资、本年市级重点项目数量、拟申报市级重点项目数量)为只读,由明细汇总,项目级统计按项目去重且拟申报项目不计入实际市级重点;
- 录入明细:逐条选择项目名称与线路,填写行业、目标计划年度建设阶段、是否本年市级重点建设项目、是否拟申报市级重点建设项目、项目总投资、预备费、本年预计完成投资、截至基准年末预计累计完成投资;明细也可下载
.xlsx模板批量导入,模板错误整批拒绝并返回行号; - 对每条项目明细按责任单位/部门做金额分解:一条项目明细可增加多条责任单位/部门行,每行填写「计划投资」以及目标年度 1—12 月计划金额;季度、半年、前三季度与全年金额按 R-EI-006 的公式汇总,责任部门行小计与两类合计按 R-EI-007 汇总;
- 底部「选择审批人员」确定下一办理人(经办部门副部长、经办部门负责人、交建公司经办人),按 R-EI-010 校验必填;
- 底部左侧「暂存」保存为草稿,右侧「提交」按 R-EI-011 启动流程,「返回」不落库退回台账。
4.2 上报确认、计划调整与下发
- 计划确认岗在「投资计划确认」台账查看上报数据,明确维护「是否上报一致」;只有标记为「是」的计划允许下发;
- 对需要调整的计划创建新
MODIFY版本并按审批流程提交,原版本与审批历史保留;调整保存不自动更改一致标记; - 下发以目标年度维护红头文件台账:每年一条记录,可关联多个文件与上传时间;
- 点击「下发计划」进入「工程建设投资计划下发」填报页,按一个责任部门分解行选择项目、责任单位/部门与一名分公司接收经办人,填写备注并选择该目标年度的红头文件。分配表单提交即生效,不另启流程;红头文件单个不超过 50 MB,格式限 doc/docx/xls/xlsx/ppt/pptx/txt/pdf,支持删除与预览。
4.3 下发计划修改
- 分公司经办人在下发计划基础上进入「下发计划修改」页面,来源上报年度为基准年 N,目标年度为 N+1;沿用原计划并创建新
MODIFY版本,保留来源版本与明细拆分关联; - 明细沿用上报结构:可在新版本内调整计划项目与责任单位/部门拆分,月份金额预填来源版本并允许依授权编辑;审批通过后新版本成为当前版本;
- 提交前在「选择审批人员」选择工程管理部经办人、工程管理部副部长、工程管理部部长、工程管理部分管领导与交建公司经办人,按 R-EI-016 校验必填。
4.4 投资实施月度上报
- 经办人在「投资实施」台账点击项目行的「实施上报」,进入「投资实施上报」页面;
- 实施年度自动为基准上报年度 N+1,并绑定到一个已下发的计划责任部门分解行;填写月份与实际完成投资,计划本月投资从该分解行读取;填报前累计=基准计划明细截至本年底预计累计完成+该实施年度此前已通过实际,填报后累计=填报前累计+本次实际;
- 选择工程管理部经办人、工程管理部副部长与工程管理部部长(仅「工程管理部部长」必填)后暂存或提交;
- 「上报记录」页面按上报月份倒序列出该项目的历次上报(计划本月投资、实际完成投资、上报前累计完成、上报后累计完成、上报经办人、上报申请时间),行内提供详情、修改与删除;
- 投资实施台账按月对照计划与实际:每项目/责任部门行展示各月的计划、完成、月度计划完成率、1—N 月计划与完成、年累计完成率与年度计划完成率,并展示「当前已完成投资上报月份」「本年累计完成投资」「截至上年底预计累计完成投资」。
4.5 台账查询、汇总与导出
- 三个台账使用同一套查询条件:项目名称、上报年度、发起单位、责任部门、建设阶段、行业、本年市级重点、拟申报市级重点、线路、项目总投资、预备费,并提供搜索与重置;
- 台账上方固定展示六个年度汇总指标:今年项目总投资、今年总预备费、今年预计完成总投资、今年市级重点项目总投资、今年已有市级重点项目数量、今年拟申报市级重点项目数量(单位:亿元,数量为计数);
- 台账明细中「行业」「次年建设阶段」「是否本年市级重点建设项目」等列在列表内提供下拉编辑(内联编辑);
- 工具栏按台账分设动作:上报台账为新增/修改/删除/导出,确认台账与实施台账为下发计划/修改/删除/导出,实施台账行内另提供实施上报与上报记录;
- 导出按当前查询条件与权限可见列导出;筛选条件不作为单位/部门数据隔离,导出内容与当前查询结果一致。
5. 业务规则与状态
5.1 业务规则
| 编号 | 规则 | 来源 | 状态 |
|---|---|---|---|
| R-EI-001 | 「工程投资管理」为一级菜单,下设「投资计划」目录(投资计划上报、投资计划确认)与「投资实施」;下发及实施上报相关页面由业务入口进入,普通菜单动态注册,流程办理页静态注册 | 原型图片版(1.1/2.1/3.1 左侧菜单与面包屑);平台菜单/流程路由基线 | 原型明确;注册方式已按推荐默认确定(Q-EI-001、Q-EI-016) |
| R-EI-002 | 投资计划上报为年度整单填报:一份上报单包含多个项目明细行,明细保存项目、线路、行业、建设阶段、市级重点标识与四项金额 | 原型图片版(1.2 上报计划发起页面) | 原型明确 |
| R-EI-003 | 上报单头部六项汇总值为只读,由项目明细汇总产生;项目级金额和数量按项目去重,市级重点统计只计实际标记为市级重点的项目,拟申报项目单独计数 | 原型图片版(1.2;只读输入框);Q-EI-020 | 原型明确;口径已按推荐默认确定 |
| R-EI-004 | 明细必填项为项目名称、行业、次年建设阶段、是否本年市级重点建设项目、是否拟申报市级重点建设项目、项目总投资、预备费、本年预计完成投资、截至本年底预计累计完成投资;线路为非必填选择 | 原型图片版(1.2 明细列标题的必填标记) | 原型明确 |
| R-EI-005 | 计划按责任单位/部门逐条分解到次年 1—12 月,并汇总出季度、半年、前三季度、全年的金额与计划完成率 | 原型图片版(1.1 台账横向列、1.2 明细列) | 原型明确 |
| R-EI-006 | 阶段金额为区间求和:一季度=1—3月,上半年=1—6月,前三季度=1—9月,全年=1—12月;责任部门小计为各部门行之和。原型公式标注 C1—C4 与 Aa—Ad,另有同构 B1—B4。投资实施月度完成率=当月实际/当月计划,累计完成率=截至该月累计实际/累计计划,年度计划完成率=本年累计实际/年度计划;分母为 0 显示「—」,比例两位小数 | 原型图片版(1.1、1.2 单元格公式标注;3.1 月度/累计列);Q-EI-008 推荐默认 | 区间金额与小计为原型事实;比率公式及精度已按推荐默认确定 |
| R-EI-007 | 台账与明细底部提供「市级重点建设项目合计」与「所有工程项目合计」两个合计行;市级重点合计只包含实际市级重点标记为「是」的项目,全部项目月度金额按分解行求和,项目级金额与数量按项目去重 | 原型图片版(1.1/1.2/2.1/2.2/3.1);Q-EI-020 | 原型明确;统计范围已按推荐默认确定 |
| R-EI-008 | 一条项目明细可对应多条责任单位/部门分解行(行内「+新增」),项目明细行本身不重复 | 原型图片版(1.2、2.3 责任单位/部门列的行内新增) | 原型明确 |
| R-EI-009 | 明细支持下载 .xlsx 模板与批量上传,包含项目字段、责任部门分解和 12 个月金额;服务端整批校验,有错误则按行号返回并拒绝整批,避免部分写入 | 原型图片版(1.2 明细工具栏);Q-EI-007 推荐默认 | 原型明确;模板和错误处理已按推荐默认确定 |
| R-EI-010 | 投资计划上报审批链:申请→经办部门副部长(选填)→经办部门负责人(必填)→交建公司经办人(必填);未选择的选填节点跳过 | 原型图片版(1.2 底部「选择审批人员」);Q-EI-003 推荐默认 | 原型人员与必填标记明确;链路已按推荐默认确定 |
| R-EI-011 | 计划上报、下发计划修改与实施上报提交时启动各自审批流程;红头文件台账提交保存年度记录,下发分配提交即生效、不另启流程;暂存保存草稿 | 原型图片版(1.2/2.2/2.3/3.2 按钮及审批人员选择区);Q-EI-003/Q-EI-011 推荐默认 | 已按推荐默认确定:流程仅用于显示审批人员选择区的三类表单 |
| R-EI-012 | 投资计划确认台账增加「是否上报一致」列;获授权确认人员明确维护该标记,标记为「是」才允许下发。调整计划创建新修改版本,保存调整不自动改变一致标记 | 原型图片版(2.1 上报确认台账);Q-EI-009 推荐默认 | 原型明确;一致性与调整行为已按推荐默认确定 |
| R-EI-013 | 投资计划下发以目标年度维护红头文件台账,每年一条且可含多个文件和上传时间;下发分配引用年度台账文件,文件本体复用平台文件服务 | 原型图片版(2.2 红头文件台账);平台文件服务 | 原型明确;结构已按推荐默认确定 |
| R-EI-014 | 下发表单字段为上报年度、计划项目、责任单位/部门(默认取计划上报项目的责任单位/部门)、选择分公司经办人、备注、上传红头文件;文件单份不超过 50MB,格式限 doc/docx/xls/xlsx/ppt/pptx/txt/pdf,支持删除与预览 | 原型图片版(2.2 下发填报页面) | 原型明确 |
| R-EI-015 | 下发计划修改以既有计划为基础新建 MODIFY 版本,保存来源、前一版本和版本号,克隆项目/责任部门拆分并保留来源标识;通过后切换当前版本,将仍有效的下发关联重绑至新拆分,不覆盖既有计划与审批历史 | 原型图片版(2.3 下发计划修改页面);Q-EI-009/Q-EI-010 推荐默认 | 原型结构明确;版本策略已按推荐默认确定 |
| R-EI-016 | 下发计划修改提交时选择审批人员:工程管理部经办人(必填)、工程管理部副部长(非必填)、工程管理部部长(必填)、工程管理部分管领导(必填)、交建公司经办人(必填) | 原型图片版(2.3 底部「选择审批人员」) | 原型明确 |
| R-EI-017 | 投资实施台账按计划年度展示月度计划与实际;1 月组为计划、实际、月度完成率、年度计划完成率四列,2—12 月组另展示累计计划、累计实际、累计完成率 | 原型图片版(3.1 投资实施台账横向列;1 月组无累计列);Q-EI-008 | 原型列组明确;完成率按统一公式已按推荐默认确定 |
| R-EI-018 | 投资实施台账展示「当前已完成投资上报月份」「本年累计完成投资」「截至上年底预计累计完成投资」 | 原型图片版(3.1 明细列) | 原型明确 |
| R-EI-019 | 实施上报绑定一条已下发计划的责任部门分解行,实施年度等于计划目标年度;计划月金额从该分解行读取。填报前累计为基准计划明细截至本年底预计累计完成金额加本实施年度此前已通过实际,填报后累计为填报前累计加本次实际;只有审批通过后计入台账 | 原型图片版(3.2/3.3);Q-EI-010 推荐默认 | 字段与必填标记原型明确;关联、累计与生效口径已按推荐默认确定 |
| R-EI-020 | 投资实施上报审批链:申请→工程管理部经办人(选填)→副部长(选填)→部长(必填);未选择的选填节点提交时跳过 | 原型图片版(3.2 底部「选择审批人员」,放大核对:仅「工程管理部部长」带红标);Q-EI-003 | 原型人员与必填标记明确;链路已按推荐默认确定 |
| R-EI-021 | 投资实施上报记录按月份倒序展示计划、实际、前后累计、经办人和申请时间;每个下发分解行/实施年度/月最多一条,草稿/退回可修改或删除,通过记录只读并计入台账 | 原型图片版(3.3);Q-EI-010/Q-EI-019 | 原型明确;关联、唯一性和台账口径已按推荐默认确定 |
| R-EI-022 | 三个台账共用同一套查询条件(项目名称、上报年度、发起单位、责任部门、建设阶段、行业、本年市级重点、拟申报市级重点、线路、项目总投资、预备费)与同一套六个年度汇总指标 | 原型图片版(1.1/2.1/3.1) | 原型明确 |
| R-EI-023 | 台账工具栏按台账分设动作:上报台账为新增/修改/删除/导出;确认台账为下发计划/修改/删除/导出;实施台账为下发计划/修改/删除/导出,行内另提供实施上报/上报记录/删除 | 原型图片版(1.1/2.1/3.1 工具栏与行操作) | 原型明确 |
| R-EI-024 | 授权用户可在草稿/退回记录内联编辑行业、阶段、本年市级重点及拟申报市级重点;等待审批/已通过只读,其他业务字段通过新修改版本维护 | 原型图片版(1.1/2.1/3.1 单元格下拉);Q-EI-014 | 原型明确;权限和状态口径已按推荐默认确定 |
| R-EI-025 | 金额单位亿元,库内 DECIMAL(18,2);金额按精确十进制计算,展示最多两位小数;比率显示两位小数 | 原型图片版(各列标题「(亿元)」与单元格值);Q-EI-008 | 单位原型明确;精度与计算已按推荐默认确定 |
| R-EI-026 | 权限采用 investment:<资源>:<动作> 三段式,后端、菜单与前端指令一致;模块岗位权限控制可执行动作;筛选条件不自动构成数据隔离 | 工程契约(三段式权限码、后端鉴权);Q-EI-004/Q-EI-005 | 已按推荐默认确定 |
| R-EI-027 | 项目与线路取平台已解耦业务项目主数据,保存业务 ID 及名称/编码快照;不另建项目/线路主数据 | 平台既有基线(规划管理已确认口径,见规划管理需求分析 S-PL-005);Q-EI-013 | 已按推荐默认确定 |
| R-EI-028 | 业务状态与流程实例状态分列,业务状态码为 draft/waiting/back/finish;状态在表单/详情展示,列表不显示业务状态列(按平台同级台账展示方式) | 平台既有基线(BusinessStatusEnum 稳定编码与规划管理先例);Q-EI-006 | 已按推荐默认确定 |
| R-EI-029 | 审批复用 Warm-Flow,所有节点由表单选人,不使用部门/角色待办池;流程链路按 R-EI-010、R-EI-016、R-EI-020 | 平台既有基线(业务地图·工作流);Q-EI-003 | 已按推荐默认确定 |
| R-EI-030 | 红头文件与明细批量上传附件沿用平台文件服务,保存对象引用而非复制实体文件 | 平台既有基线(文件服务复用) | 已按推荐默认确定 |
| R-EI-031 | 提醒、导出列定制、看板与外部系统对接未纳入本期范围 | 范围假设(无业务资料或其他需求来源) | 实施者假设;按推荐默认确定 |
5.2 状态流转
原型台账未展示业务状态列,表单页只提供「暂存」「提交」「返回」三个动作。用户授权按推荐默认确定,本模块采用平台既有状态编码:
text
草稿(draft) --提交--> 进行中(waiting) --全部节点通过--> 已通过(finish)
|
+--退回(back)--> 修改后重新提交 --> 进行中草稿:暂存产生,未启动流程实例,仅创建者或具备管理权限者可编辑、删除与提交;进行中:流程已启动,业务表单按当前处理人可办理、其他人只读;退回:退回至申请人节点后的业务状态,发起人修改后重新提交;已通过:流程结束,业务表单只读;投资实施上报通过后按 R-EI-019 的计划分解关联和累计规则计入台账月度完成与累计值。
中文状态名只用于展示,数据库只存稳定枚举值。依原型,状态在表单和详情中展示,不额外增加台账列。
6. 权限、异常与非功能要求
6.1 权限与数据范围
- 权限码按
investment:<资源>:<动作>三段式设计,资源为planReport、planConfirm、planIssue、implementation与implementationRecord;按业务授予list/add/edit/delete/submit/approve/export/consistency/issue/adjust动作,后端注解、菜单权限串与前端指令逐字一致。 - 前端隐藏按钮不代替鉴权:提交、审批办理、下发、调整计划、删除与导出的最终判定均在服务端执行。
- 数据范围:原型含发起单位与责任部门筛选,本模块把二者作为显式查询条件,不新增单位/部门数据隔离;业务动作仍受模块岗位权限、单据状态与流程任务归属约束。
- 记录级权限按平台基线:草稿仅创建者或具备管理权限者可编辑删除;进行中仅当前处理人可办理节点动作;终态只读。
- 角色授权需同时覆盖模块业务权限与依赖的平台权限(项目查询、流程实例与流程图查询、文件查询),具体清单在实现时按同级模块先例建立。
6.2 异常与回滚
| 场景 | 系统行为 | 用户提示或补救 |
|---|---|---|
| 暂存时数据不完整 | 允许保存,不做全量校验 | 提示为草稿,后续可继续编辑 |
| 提交时必填项缺失(项目名称、行业、建设阶段、市级重点标识、四项金额、审批人员) | 拦截提交,保留已录入数据 | 指出具体缺失字段或明细行 |
| 明细金额与汇总不一致 | 以明细汇总值刷新头部只读项,不接受手工覆盖 | 头部只读值随明细变化 |
| 提交未选择必填审批人员 | 拒绝提交 | 提示选择必填审批人员 |
| 明细批量上传模板不符或数据非法 | 整批拒绝并返回失败行,不产生半成品数据 | 提示文件/行号与校验原因 |
| 下发红头文件超过 50MB 或格式不符 | 拒绝上传 | 提示文件大小与允许格式 |
| 重复点击提交 | 服务端重复提交拦截,同一单据只允许一个活动实例 | 提示重复提交并返回已有流程状态 |
| 非当前处理人办理 | 服务端按流程任务归属校验后拒绝 | 提示该任务不是本人待办 |
| 修改他人草稿或终态单据 | 服务端按记录级权限拒绝 | 提示仅创建人或具备管理权限者可操作 |
| 删除被后续环节引用的上报单或下发记录 | 服务端拒绝并说明引用关系 | 引导使用调整版本或按流程办理 |
| 流程回调重复或流程启动失败 | 审批记录按引擎办理记录幂等;启动失败回滚业务提交 | 返回失败原因,数据保持一致 |
| 同一计划分解行重复创建下发分配 | 由服务端唯一性校验拦截(见 Q-EI-019) | 提示已存在下发记录 |
6.3 非功能要求
- 台账明细列数量大(投资实施台账按月展开约 50 列以上),列表与横向滚动需保证首列与操作列的可读性;
- 列表使用数据库分页;导出与台账的筛选条件、数据范围保持一致;
- 提交、下发、月度上报回写、审批回写与状态变更在事务边界内保持一致,失败回滚;
- 明细批量上传的记录数与金额合法区间需服务端校验,不能只依赖前端;
- 关键状态变化与审批记录可追溯,日志包含业务标识、流程实例、节点、操作者与结果,不记录凭据与完整文件地址;
- 金额采用亿元与
DECIMAL(18,2)精度并使用精确十进制计算;比例按实际/计划派生,零分母显示「—」且保留两位小数。
本轮查阅的原型与平台资料未给出本模块专属的性能、并发、可用性或数据保留期定量目标;如平台统一标准不能覆盖本模块验收要求,须在验收前补齐,不从截图推定数值。
6.4 验证范围说明(本文件不构成验证报告)
- 本文件定义需求与目标口径,不声明实现、接口、数据库或页面已通过;实现状态与验收结论须由本模块测试报告和最新证据记录;
- 第 7 节验收标准是实现后的目标验收口径,待执行并取得对应证据;
- 实施与验收按根
AGENTS.md的页面证据要求覆盖真实页面,并按软件交付文档记录入口、角色、操作与实际结果。
7. 验收标准
以下为目标验收口径,尚未取得证据的场景保持待验收;具体完成情况见测试报告与实施结果。
| 编号 | 角色 | 前置条件 | 操作 | 预期结果 | 证据 |
|---|---|---|---|---|---|
| AC-EI-001 | 计划填报经办人 | 具备上报新增与提交权限、有部门归属 | 新建投资计划上报单,录入多条项目与责任部门月度金额后暂存并提交,依次办理已选审批节点 | 暂存后为 draft;提交按 R-EI-010 流转,业务状态为 waiting;头部与合计行按去重项目及分解行汇总;重复提交不产生重复活动实例 | 页面、接口、数据库 |
| AC-EI-002 | 计划填报经办人 | 同一上报单含多条项目明细与责任部门行 | 校验季度/半年/前三季度/全年金额、月度/累计/年度完成率及两类合计 | 阶段金额等于区间求和;完成率=实际/计划、精确到两位,0分母显示「—」;市级重点合计不计拟申报项目,全部项目按分解值求和、项目数去重 | 页面、接口、数据库 |
| AC-EI-003 | 计划填报经办人 | 已下载明细模板 | 批量上传含合法与非法行的模板 | 合法行导入成功,非法行按 R-EI-009 口径报告且不产生半成品数据 | 页面、接口 |
| AC-EI-004 | 审批链办理人 | 上报单已提交 | 按 R-EI-010 顺序办理节点,分别覆盖选填节点有值和跳过两种情况 | 当前办理人可办理、其他人只读;跳过节点不产生任务;流程通过后状态为 finish,审批历史可查 | 页面、接口、数据库 |
| AC-EI-005 | 退回场景发起人 | 上报单流程退回申请人 | 修改退回单并重新提交 | 状态从 back 回到 waiting;沿用原流程实例且原审批记录保留 | 页面、流程时间线 |
| AC-EI-006 | 计划确认岗 | 存在已上报的年度计划 | 在投资计划确认台账查看并执行调整计划 | 台账展示「是否上报一致」标识;调整后数据可按 R-EI-012 口径反映差异 | 页面、数据库 |
| AC-EI-007 | 计划确认岗 | 上报计划已完成审批;目标年度红头文件台账已建立,计划一致标记为「是」 | 按责任部门分解行下发并上传/关联合规红头文件 | 每年一条文件台账可挂多个文件;每个分解行最多一条分配,选择一名接收人;提交即生效,不支持格式或超限文件被拒绝 | 页面、接口、数据库 |
| AC-EI-008 | 分公司经办人 | 存在下发给本人的计划拆分 | 打开计划修改并调整金额,提交工程管理部链路 | 建立新的 MODIFY 版本并保留来源/历史;目标年为基准上报年+1;审批通过后切换当前版本 | 页面、接口、数据库 |
| AC-EI-009 | 实施上报经办人 | 存在有效下发分解行 | 对目标年度某月填报实际并完成审批 | 月计划按分解行读取,前后累计符合 R-EI-019;每个分解行/年/月唯一;只有通过记录计入实际与完成率 | 页面、接口、数据库 |
| AC-EI-010 | 查看人员 / 越权用户 | 分别具备与不具备对应动作权限 | 调用导出、下发、一致标记、计划调整与删除接口 | 无权限调用被服务端拒绝;有权限时按模块岗位权限和显式筛选返回;筛选条件不形成额外数据隔离 | 接口 |
| AC-EI-011 | 查看人员 | 具备页面权限 | 打开三个台账并切换查询条件 | 查询条件与六个汇总指标口径一致;明细下拉列可编辑;导出与列表口径一致 | 页面、接口 |
8. 需求来源与基线决策
8.1 原型来源清单
原型共 21 张页面图(2026-09-20),按页面归集如下,作为第 5 节各规则的定位来源:
| 页面 | 原型文件 | 页面要点 |
|---|---|---|
| 投资计划上报台账 | 1.1、投资计划---台账--1/2/3.png | 查询条件、六个汇总指标、明细列与次年月度分解列、合计行、工具栏 |
| 工程建设投资计划上报 | 1.2、投资计划---上报计划发起页面--1/2.png | 头部字段与只读汇总、明细网格与批量导入、责任部门分解、选择审批人员 |
| 投资计划确认台账 | 2.1、投资计划---上报确认台账--1/2/3.png | 查询与汇总、是否上报一致列、调整计划与下发计划动作 |
| 红头文件台账(投资计划下发) | 2.2、投资计划---上报确认台账---下发红头文件---台账.png | 年度查询、红头文件列表、下发计划与删除、暂存/提交/返回 |
| 工程建设投资计划下发(下发填报) | 2.2、投资计划---上报确认台账---下发红头文件---下发填报页面.png | 计划项目、责任单位/部门、分公司经办人、备注、红头文件上传 |
| 下发计划修改 | 2.3、投资计划---上报确认台账---下发计划修改页面--1/2.png | 头部字段、明细网格、计划投资与台账带出、工程管理部链路审批人员 |
| 投资实施台账 | 3.1、投资计划---投资实施台账---1…7.png | 查询与汇总、月度计划/完成/完成率列、当前上报月份与累计列、实施上报与上报记录入口 |
| 投资实施上报 | 3.2、投资计划---投资实施上报页面.png | 上报月份、计划本月投资、实际完成投资、只读累计值、选择审批人员 |
| 投资实施上报记录 | 3.3、投资计划---投资实施上报记录.png | 历史上报列表与详情/修改/删除 |
标注局限:原型图内附有序号标注(黄色徽标),但标注图例说明未随图片提供。复核到的编号范围:投资计划上报台账与发起页 1—19;上报确认与下发系列(确认台账、红头文件台账、下发填报、下发计划修改)至 45;投资实施台账至 100 以上(最右端可辨认约 108)。仅由标注承载、图面文字无法确定的口径不作为截图事实;依用户授权按第 8.2 节所列推荐默认处理,并注明证据来源。
原型图内另存在下列命名或标注不一致,实现时不应据此复制,按本文件基线统一(已并入 Q-EI-001、Q-EI-003、Q-EI-006 与 Q-EI-020):同一查询条件在部分页面写作「拟申报年市级重点」(1.1、3.1 为「拟申报市级重点」);下拉占位文字有「请选择交建公司公办人」;投资实施台账 1 月组第 4 列写作「年度计划完成(%)」;投资实施台账页左侧菜单写「工程投资监管」而同页面包屑写「工程投资管理」;多页面包屑末尾多一个「/」;下发填报页「计划本月投资」的输入占位文字为「请选择经办部门」。
原型演示数据亦不自洽,不得作为计算口径依据:投资实施台账某图「小计」行数值 6.12 与同列各行计划投资之和(1.55+0.55+1.12+3.22+1.78=8.22)不符,且该行未显示行名(见 Q-EI-020);投资实施台账同一行的两张滚动截图在相同位置数据不同(一张责任单位与计划投资为空、另一张有值)。统计按 Q-EI-020 的项目去重与责任部门分解口径重算。
8.2 已按推荐默认确定的事项与仍未解决项
用户已授权“待确认的东西都按你的推荐来”。以下决定依据原型截图、平台既有契约、规划管理同级模块和风险最小的可追溯实现方式确定,是当前需求基线;它们不是业务方另行确认的事实,也不代表已实现或已验收。若后续取得相反的正式业务依据,应记录变更及影响后再调整。
| 编号 | 原待决事项 | 已采用的推荐默认与决策依据 | 状态 | |---|---|---|---|---| | Q-EI-001 | 菜单名称在多数原型页显示「工程投资管理」,少数左侧栏显示「工程投资监管」;功能目录使用后者 | 全局菜单、路由和权限命名 | 统一采用「工程投资管理」;原型大多数页面及面包屑一致,功能目录名称视作目录用语差异;权限前缀采用 investment | 已按推荐默认确定 | | Q-EI-002 | 发起单位、发起部门、责任部门与用户归属关系不明 | 组织字段、候选人和快照 | 发起单位、发起部门与责任部门均引用 SYS_DEPT 中所选组织节点,分别保存节点 ID+名称快照;发起部门默认当前用户部门;人员使用现有用户选择器,不自建组织主数据 | 已按推荐默认确定 | | Q-EI-003 | 三条审批链的节点完整顺序、选填节点与退回路径未完全画出 | 三条流程 JSON、办理页与流程变量 | 上报:申请→经办部门副部长(选填)→经办部门负责人(必填)→交建公司经办人(必填);下发修改:申请→工程管理部经办人(必填)→副部长(选填)→部长(必填)→分管领导(必填)→交建公司经办人(必填);实施:申请→工程管理部经办人(选填)→副部长(选填)→部长(必填)。未选择的选填节点跳过;退回按引擎历史回到申请人,沿用实例重提 | 已按推荐默认确定 | | Q-EI-004 | 权限资源与动作需规范化 | 前后端权限与角色授权 | 三段式 investment:<资源>:<动作>;资源为 planReport、planConfirm、planIssue、implementation、implementationRecord,动作按业务取 list/add/edit/delete/submit/approve/export/consistency/issue/adjust;后端注解、SYS_MENU.PERMS 与前端指令逐字一致 | 已按推荐默认确定 | | Q-EI-005 | 台账单位/部门筛选是否构成行级数据隔离 | 查询、导出与跨部门可见性 | 只作显式筛选,不加单位/部门数据范围隔离;实际操作仍受模块岗位权限及单据状态/当前流程任务约束。依据:筛选条件为显式查询条件,不构成数据范围授权;规划管理先例未默认隔离 | 已按推荐默认确定 | | Q-EI-006 | 状态枚举与是否新增列表状态列 | 状态回写和页面列 | 业务状态使用 draft/waiting/back/finish;列表不显示业务状态列,状态在表单/详情展示;该展示方式按平台同级台账基线确定,不以原型缺项作为禁止依据;流程实例状态由 Warm-Flow 管理 | 已按推荐默认确定 | | Q-EI-007 | 批量模板格式、列和失败处理 | 模板与导入事务 | 提供 .xlsx 模板,包含项目字段、责任单位/部门拆分与 12 个月金额;整批校验,存在非法行即拒绝整批,按行号返回错误,不落入部分数据。依据:模板入口可见且整批原子性避免半成品 | 已按推荐默认确定 | | Q-EI-008 | 金额与比例精度、分子/分母及零分母 | 数据类型、计算和显示 | 金额单位亿元,持久化 DECIMAL(18,2);完成率=实际/计划,月度、累计与年度按对应口径取值;分母为 0 显示「—」,比例两位小数,使用精确十进制运算 | 已按推荐默认确定 | | Q-EI-009 | 一致性判断与计划调整对标记的影响 | 确认台账操作和版本数据 | 「是否一致」由有权限的确认人员明确设置;仅设为「是」允许下发;计划调整创建新版本,不自动重置或变更一致标记,审批通过后切换当前版本并重绑仍有效的下发关联,保留旧版与审批历史 | 已按推荐默认确定 | | Q-EI-010 | 实施年度映射、行粒度、累计规则和生效时点 | 实施台账、实际完成及回写 | 上报基准年 N,对应计划与实施年度 N+1;实施单关联到具体下发计划分解行,月份计划从该行读取。填报前累计=基准计划明细中的截至本年底预计累计完成+该实施年度此前已通过实际;填报后累计=填报前累计+本次实际;仅审批通过后计入台账。按分解行+计划年度+月份唯一,草稿/退回可编辑或删除;通过记录只读 | 已按推荐默认确定 | | Q-EI-011 | 年度红头文件、项目下发记录和提交流程关系 | 下发模型及流程数 | 每目标年度一条红头台账、可挂多附件;每个计划责任部门分解行建立一条接收对象分配且选择一名接收人;分配表单提交即生效,不启动额外流程,后续修改走 Q-EI-003 的修改流程 | 已按推荐默认确定 | | Q-EI-012 | 确认台账、年度文件与项目下发的关联 | 页面入口和数据关联 | 沿用原型主链:上报通过→确认并维护一致→维护目标年度红头文件→从确认台账下发;目标计划年度=上报年度+1,年度文件可供该年度各分解行下发引用 | 已按推荐默认确定 | | Q-EI-013 | 是否复用既有项目/线路主数据 | 引用键与名称快照 | 复用规划管理的已解耦业务项目与线路选项;保存项目/线路业务 ID 及名称、编码快照,不建新的主数据层 | 已按推荐默认确定 | | Q-EI-014 | 台账内联编辑字段、状态及审批影响 | 列表交互与变更追溯 | 仅行业、建设阶段、本年市级重点、拟申报市级重点四项允许授权用户在草稿/退回记录内联修改;等待审批与已通过记录只读,其他字段通过新修改版本维护 | 已按推荐默认确定 | | Q-EI-015 | 导出列与两类合计范围 | 导出和统计一致性 | 导出当前筛选结果对应的可见字段,并保留阶段/月度列;市级重点合计只计实际市级重点标记,全部项目月度值按责任部门拆分汇总,项目级指标按不同项目去重。原型示例中的不一致数值不作为规则 | 已按推荐默认确定 | | Q-EI-016 | 普通页面与办理页注册方式 | 菜单/路由设计 | 普通业务菜单动态注册;三个流程办理页静态注册:/investment/plan/report/flowForm、/investment/plan/issueModify/flowForm、/investment/implementation/report/flowForm,并保留对应隐藏流程菜单权限行 | 已按推荐默认确定 | | Q-EI-017 | 行业、阶段与标识字典值 | 下拉与筛选 | 行业采用原型观察值「轨道交通、综合开发、铁路」;阶段「续建、开工」是原型已观察的暂定选项,非完整业务枚举,后续若出现正式字典来源需扩充;两类市级重点标记取「是/否」。使用模块字典避免擅自复用语义不同的旧字典 | 已按推荐默认确定(阶段选项暂定) | | Q-EI-018 | 月度金额与完成率的数据结构 | 数据表与报表计算 | 每条计划责任部门分解行保存 12 个按月金额列;完成率由计划与通过的实际动态计算,不重复持久化 | 已按推荐默认确定 | | Q-EI-019 | 计划项目、下发分配、月报唯一性 | 唯一索引与并发校验 | 同一计划内业务项目唯一;每个计划责任部门分解行最多生成一条当前下发分配;实施记录按下发分解行+实施年度+月份唯一,避免同项目不同责任部门互相排斥 | 已按推荐默认确定 | | Q-EI-020 | 小计/合计的行名和计算范围 | 台账、导出和验收 | 统一使用「市级重点建设项目合计」「所有工程项目合计」两行;前者仅按实际市级重点标记汇总,后者按分解行汇总月度值;项目级金额与数量以去重项目为单位。原型演示数据不自洽,按明确字段和公式重算 | 已按推荐默认确定 |
目前无阻塞业务规则的未解决项。行业阶段的候选值中,「续建、开工」仅有原型观察证据,明确标记为暂定选项;正式完整枚举如后续取得来源,纳入字典维护,不改变本期可实现的规则。
8.3 变更记录
| 版本 | 日期 | 变更 | 记录依据 |
|---|---|---|---|
| v1.0 | 2026-09-21 | 依据 21 张原型截图与平台既有基线建立正式需求分析文档;同步核对代码库与开发库,记录本模块尚无实现 | 初版资料记录 |
| v1.1 | 2026-09-21 | 复核轮次修正:①修正 R-EI-020 实施上报审批人员的必填标记(原将原型黄色序号标注误读为必填标记,放大核对后仅「工程管理部部长」带红标,并记录与下发修改页的标记不一致);②修正 R-EI-017 投资实施台账的月度列结构(1 月组为 4 列、2—12 月组为 7 列);③补充 R-EI-006 的 B1—B4 同构公式;④细化 Q-EI-001 菜单名称不一致的观测范围;⑤新增 Q-EI-018(月度金额存储结构)与 Q-EI-019(唯一性键口径),并替换概要设计中两处错引的待确认编号;⑥补充原型标注编号范围与原型图内命名不一致清单 | 历史复核记录 |
| v1.2 | 2026-09-21 | 第二轮修正:①按交付文档要求把「受测代码状态」改为记录仓库 HEAD 提交号与受测范围说明;②新增 Q-EI-020(实施台账小计/合计行的行名与计算范围),并记录原型演示数据不自洽的两处观测(小计 6.12 与行合计 8.22 不符、同一行两张截图数据不同),明确不作为计算口径依据 | 历史复核记录 |
| v1.3 | 2026-09-21 | 复核修正:撤回完成率分子/分母及累计值公式的未证实表述;区分有审批人员选择区的三条链路与红头文件台账提交语义待确认事项;明确实施年度、责任单位/部门分解行关联及更正回写规则待确认,并修正可能遗漏责任部门维度的唯一键建议;更正金额精度与展示尾随零说明;验收项前置条件引用相应待确认项,并说明本模块未提供定量 NFR 目标 | 历史复核记录 |
| v1.4 | 2026-09-27 | 用户授权按推荐默认处理待确认项;依据 21 张原型截图、平台权限/组织/流程/项目基线与规划管理先例,确定组织快照、三条流程、业务状态、金额/比例公式、实施年度与累计、下发及附件、计划版本、一致标志、数据范围、动态菜单与静态办理路由、字典初始值、唯一性和统计口径;保留行业阶段枚举完整性为后续可补的非阻塞项。仅确定业务需求基线,代码与验收状态仍须以实际证据为准 | 用户授权采用推荐默认 |
| v1.5 | 2026-09-27 | 同步实现与验收状态;补充测试报告、用户手册入口,并明确计划写入修复和端到端复测受本机 Java NIO selector 环境阻断 | 本轮实现与验证记录 |
| v1.6 | 2026-09-27 | 更新端到端证据:计划上报、计划调整、下达与月报 API 流程共通过 21 项检查;补充 DM8 标志字段与月份列映射修复、累计口径实测值;真实浏览器页面仍待验收 | 本轮接口、流程与数据库回读 |
2026-10-14 合资公司默认归属兼容
发起单位沿当前用户组织向上解析最近的业主集团、公司、分公司或合资公司,合资公司使用原组织 ID;发起部门保持当前用户部门。该规则只影响默认值,不增加组织数据隔离或改变审批权限。验收例子:合资公司及其部门用户发起上报时,默认发起单位为该合资公司,不错误上溯到母公司。