Skip to content

工程投资管理 · 数据库设计文档 ​

字段中文含义参考 2026-11-02 开发库、生产库只读回读的字段注释及原有业务资料;历史物理结构、核验日期和设计差异仍以各表原记录为准。

文档版本:0.10 | 最近核对日期:2026-09-27

1. 设计范围与核验状态 ​

项目内容
模块名称工程投资管理
关联需求分析需求分析
关联详细设计详细设计
设计数据库逻辑类型按 Java/通用 SQL 设计;当前物理结构为 DM8 开发库
数据库交付基线本次新建,无已发布备份基线;不保存业务 SQL 文件
实体/Mapper 来源digital-construction-modules/digital-construction-business/src/main/java/com/bokun/business/investment/domain/;对应 mapper/
MCP 结构核验2026-09-27,dcp-dm8-dev,通过项目 MCP dm_query 读取 USER_TAB_COLUMNS、USER_INDEXES、USER_IND_COLUMNS、USER_CONSTRAINTS
数据库核验状态已按实际库核对;共 7 张表、159 个持久化列、7 个主键约束、8 个命名业务索引;首次结构验收时七表均为空,端到端后已有标记验收数据

金额存储单位为亿元,使用 DECIMAL(18,2);主键与逻辑引用为 BIGINT。TIMESTAMP 的物理默认值按 MCP 回读记录。BASE 审计列由 BaseEntity 与 MyBatis-Plus 字段填充维护;逻辑删除列由实体 @TableLogic 维护。设计默认状态为小写 draft,已通过 MCP 对四个状态表的 STATUS 默认值完成调整并读回。DM8 为当前开发环境,目标生产数据库厂商尚未在本模块需求中指定;跨人大金仓/openGauss 部署时仍需核对时间类型、默认值和索引语法。

截至 2026-09-27,本轮 API 端到端验证已在开发库成功写入并回读计划上报、调整版本、年度下达与月报;精确行数及版本重绑结果见第 7 节。验收工程主数据 E2E-INV-20260927 保留在 BIZ_PROJECT,不属于本模块七张业务表。页面与附件上传验收边界见测试报告。

2. 实体关系 ​

text
BIZ_INVEST_PLAN 1 ── N BIZ_INVEST_PLAN_ITEM 1 ── N BIZ_INVEST_PLAN_SPLIT
        │                                                        │
        └── 版本指针 / 前序版本关系(逻辑引用)                   └── 1 ── N BIZ_INVEST_ISSUE_ALLOCATION
                                                                         │
BIZ_INVEST_ISSUE 1 ── N BIZ_INVEST_ISSUE_FILE                       1 ── N BIZ_INVEST_IMPLEMENTATION
        └────────────── 1 ── N BIZ_INVEST_ISSUE_ALLOCATION

数据库实际只有七张表的主键约束,没有物理外键约束。计划—项目、项目—部门拆分、红头附件、下达分摊及实施月报之间以逻辑 ID 关联,由 Service 校验父子关系、有效状态和删除边界。删除使用逻辑删除;办结月报及其流程历史不级联物理删除。计划修改通过 SOURCE_PLAN_ID、PREVIOUS_VERSION_ID、CURRENT_VERSION_ID 和明细 SOURCE_*_ID 保留版本关系。红头台账的年度由唯一索引控制,软删除的同年度记录由 Service 恢复复用。

类型与字段标记 ​

  • 逻辑类型为 Long、Integer、String、BigDecimal、LocalDateTime;物理类型为右侧 DM8 实际类型和长度/精度。
  • 可空:否表示 NOT NULL,是表示可空;默认值 — 表示数据库未定义默认值。
  • 索引栏中的 PK 是主键约束;命名索引以索引名标注。未列于索引栏的字段无单列或联合索引。
  • 每行“核验”均指上节列明的本次 MCP 实际结构查询;“核心”按本模块业务读写标记,不影响是否列入全量矩阵。
  • 中文含义、业务取值及生成规则以 需求分析 与 概要设计 为业务源;持久化列与实体 Java 属性一一对应,标注 BaseEntity 或 @TableLogic 的公共列除外。

3. 全量字段矩阵 ​

3.1 BIZ_INVEST_PLAN(年度计划、调整版本及审批快照;实体 InvestmentPlan) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID计划主键Long / BIGINT否 / —PK PK_BIP,主键索引 INDEX33556407Service 雪花 ID是实库
REPORT_YEAR基准上报年度Integer / INT否 / —IDX_BIP_YEAR_ST(1)上报表单是实库
TARGET_YEAR计划目标年度Integer / INT否 / ——REPORT_YEAR + 1是实库
INITIATOR_ORG_ID上报单位 IDLong / BIGINT是 / ——组织选择快照否实库
INITIATOR_ORG_NAME上报单位名称快照String / VARCHAR(200)是 / ——组织名称快照是实库
INITIATOR_DEPT_ID上报部门 IDLong / BIGINT是 / ——当前部门否实库
INITIATOR_DEPT_NAME上报部门名称快照String / VARCHAR(200)是 / ——部门名称快照是实库
INITIATOR_USER_ID发起人 IDLong / BIGINT是 / ——当前登录用户否实库
INITIATOR_USER_NAME发起人姓名快照String / VARCHAR(100)是 / ——当前登录用户快照是实库
PLAN_TYPE计划类型(REPORT/MODIFY)String / VARCHAR(20)否 / REPORT—新报计划或调整版本是实库
SOURCE_PLAN_ID根计划/来源计划 IDLong / BIGINT是 / ——修改版本的逻辑引用否实库
PREVIOUS_VERSION_ID前一计划版本 IDLong / BIGINT是 / ——修改版本链逻辑引用否实库
VERSION_NO版本序号Integer / INT否 / 1—Service 递增是实库
CURRENT_VERSION_ID当前生效版本 IDLong / BIGINT是 / ——办结后更新的逻辑引用是实库
CONSISTENCY_FLAG一致标志(0/1)String / CHAR(1)否 / 0—授权用户显式维护是实库
CONSISTENCY_NOTE一致性说明String / VARCHAR(1000)是 / ——确认台账录入否实库
STATUS业务流程状态String / VARCHAR(20)否 / draftIDX_BIP_YEAR_ST(2)Warm-Flow 事件回写是实库
INSTANCE_ID流程实例 IDLong / BIGINT是 / ——Warm-Flow 回写否实库
CURRENT_NODE_CODE当前流程节点编码String / VARCHAR(100)是 / ——Warm-Flow 回写否实库
CURRENT_NODE_NAME当前流程节点名称String / VARCHAR(200)是 / ——Warm-Flow 回写否实库
CURRENT_HANDLER_IDS当前办理人 ID 快照String / VARCHAR(1000)是 / ——流程待办人员快照否实库
CURRENT_HANDLER_NAMES当前办理人姓名快照String / VARCHAR(2000)是 / ——流程待办人员快照否实库
DEPT_DEPUTY_ID上报部门副职审批人Long / BIGINT是 / ——表单所选用户否实库
DEPT_LEADER_ID上报部门负责人审批人Long / BIGINT是 / ——表单所选用户是实库
COMPANY_HANDLER_ID公司经办人Long / BIGINT是 / ——表单所选用户是实库
ENGINEERING_HANDLER_ID工程经办人Long / BIGINT是 / ——调整流程所选用户否实库
ENGINEERING_DEPUTY_ID工程部门副职审批人Long / BIGINT是 / ——调整流程所选用户否实库
ENGINEERING_DIRECTOR_ID工程部门负责人Long / BIGINT是 / ——调整流程所选用户否实库
IN_CHARGE_LEADER_ID分管领导审批人Long / BIGINT是 / ——调整流程所选用户是实库
MODIFY_COMPANY_HANDLER_ID调整公司经办人Long / BIGINT是 / ——调整流程所选用户是实库
ATTACHMENT_IDS相关附件 ID 集合String / VARCHAR(4000)是 / ——附件组件 ID 列表否实库
REMARK备注String / VARCHAR(2000)是 / ——表单录入否实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity 插入填充否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity 插入填充否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity 插入填充/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity 更新填充否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity 更新填充否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BIP_YEAR_ST(3)@TableLogic否实库

3.2 BIZ_INVEST_PLAN_ITEM(计划项目事实与来源快照;实体 InvestmentPlanItem) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID计划项目主键Long / BIGINT否 / —PK PK_BIPI,主键索引 INDEX33556409Service 雪花 ID是实库
PLAN_ID所属计划 IDLong / BIGINT否 / —IDX_BIPI_PLAN(1)逻辑关联 BIZ_INVEST_PLAN.ID是实库
PROJECT_ID项目主数据 IDLong / BIGINT否 / ——项目选择是实库
PROJECT_CODE项目编码快照String / VARCHAR(200)是 / ——项目主数据快照否实库
PROJECT_NAME项目名称快照String / VARCHAR(400)否 / ——项目主数据快照是实库
BID_ID所属标段主数据 IDLong / BIGINT是 / ——计划关联标段(三轨扩展)否实库
BID_NAME标段名称快照String / VARCHAR(200)是 / ——计划标段名称快照否实库
LINE_ID所属线路主数据 IDLong / BIGINT是 / ——项目关联线路否实库
LINE_NAME线路名称快照String / VARCHAR(400)是 / ——项目关联线路快照否实库
INDUSTRY项目行业String / VARCHAR(100)否 / ——项目计划业务字段是实库
BUILD_STAGE建设阶段String / VARCHAR(100)否 / ——页面/项目业务字段;字典值待补来源是实库
CITY_FOCUS_FLAG市级重点项目标记(0/1)String / CHAR(1)否 / '0'—项目计划业务字段是实库
NOMINATED_FOCUS_FLAG拟申报市重点标记(0/1)String / CHAR(1)否 / '0'—项目计划业务字段是实库
TOTAL_INVESTMENT项目总投资(亿元)BigDecimal / DECIMAL(18,2)否 / 0—项目计划录入是实库
RESERVE_FUND总预备费(亿元)BigDecimal / DECIMAL(18,2)否 / 0—项目计划录入是实库
CURRENT_YEAR_EXPECTED目标年度预计完成投资(亿元)BigDecimal / DECIMAL(18,2)否 / 0—项目计划录入是实库
EXPECTED_CUMULATIVE_END目标年度末累计预计完成(亿元)BigDecimal / DECIMAL(18,2)否 / 0—项目计划录入是实库
SOURCE_ITEM_ID来源计划项目 IDLong / BIGINT是 / ——计划版本逻辑引用否实库
SORT_NUM项目排序号Integer / INT否 / 0—页面排序否实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BIPI_PLAN(2)@TableLogic否实库

3.3 BIZ_INVEST_PLAN_SPLIT(责任部门年度、月度计划;实体 InvestmentPlanSplit) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID部门拆分主键Long / BIGINT否 / —PK PK_BIPS,主键索引 INDEX33556411Service 雪花 ID是实库
PLAN_ID所属计划 IDLong / BIGINT否 / —IDX_BIPS_PLAN_ITEM(1)逻辑关联 BIZ_INVEST_PLAN.ID是实库
PLAN_ITEM_ID所属计划项目 IDLong / BIGINT否 / —IDX_BIPS_PLAN_ITEM(2)逻辑关联 BIZ_INVEST_PLAN_ITEM.ID是实库
DEPT_ID责任部门 IDLong / BIGINT是 / ——部门选择是实库
DEPT_NAME责任部门名称快照String / VARCHAR(200)否 / ——部门名称快照是实库
PLAN_TOTAL部门年度计划总额(亿元)BigDecimal / DECIMAL(18,2)否 / 0—12 月计划合计/录入是实库
MONTH_011 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_022 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_033 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_044 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_055 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_066 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_077 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_088 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_099 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_1010 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_1111 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
MONTH_1212 月计划(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月度录入是实库
SOURCE_SPLIT_ID来源版本部门拆分 IDLong / BIGINT是 / ——版本调整逻辑引用否实库
SORT_NUM部门排序号Integer / INT否 / 0—页面排序否实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BIPS_PLAN_ITEM(3)@TableLogic否实库

3.4 BIZ_INVEST_ISSUE(年度红头文件台账;实体 InvestmentIssue) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID红头台账主键Long / BIGINT否 / —PK PK_BII,主键索引 INDEX33556413Service 雪花 ID是实库
ISSUE_YEAR下达年度Integer / INT否 / —唯一索引 UX_BII_YEAR;IDX_BII_YEAR(1)每年一条有效/软删可恢复记录是实库
ISSUE_NO红头文件文号String / VARCHAR(100)是 / ——文件台账录入是实库
TITLE红头文件标题String / VARCHAR(400)是 / ——文件台账录入是实库
ISSUE_DATE发文日期LocalDate / TIMESTAMP是 / ——文件台账录入是实库
REMARK文件说明String / VARCHAR(2000)是 / ——文件台账录入否实库
STATUS台账状态String / VARCHAR(20)否 / draft—文件维护/下达后更新是实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BII_YEAR(2)@TableLogic否实库

ISSUE_YEAR 唯一索引 UX_BII_YEAR 不含 DEL_FLAG,所以不允许同年插入第二行;删除未下达记录后由 Service 恢复并复用该行,不创建同年重复记录。

3.5 BIZ_INVEST_ISSUE_FILE(红头台账附件快照;实体 InvestmentIssueFile) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID附件引用主键Long / BIGINT否 / —PK PK_BIIF,主键索引 INDEX33556415Service 雪花 ID是实库
ISSUE_ID年度红头台账 IDLong / BIGINT否 / —IDX_BIIF_ISSUE(1)逻辑关联 BIZ_INVEST_ISSUE.ID是实库
FILE_ID平台文件 IDString / VARCHAR(100)否 / ——文件服务返回是实库
FILE_NAME文件名快照String / VARCHAR(512)否 / ——文件服务/上传时快照是实库
UPLOAD_TIME文件引用上传时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—文件选择时记录/DB 默认否实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BIIF_ISSUE(2)@TableLogic否实库

3.6 BIZ_INVEST_ISSUE_ALLOCATION(下达项目/部门责任拆分与接收人;实体 InvestmentIssueAllocation) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID下达分摊主键Long / BIGINT否 / —PK PK_BIIA,主键索引 INDEX33556417Service 雪花 ID是实库
ISSUE_ID年度红头台账 IDLong / BIGINT否 / —IDX_BIIA_ISS_SPLIT(1)逻辑关联 BIZ_INVEST_ISSUE.ID是实库
PLAN_ID计划版本 IDLong / BIGINT否 / ——逻辑关联 BIZ_INVEST_PLAN.ID是实库
PLAN_ITEM_ID计划项目 IDLong / BIGINT否 / ——逻辑关联 BIZ_INVEST_PLAN_ITEM.ID是实库
PLAN_SPLIT_ID计划部门拆分 IDLong / BIGINT否 / —IDX_BIIA_ISS_SPLIT(2)逻辑关联 BIZ_INVEST_PLAN_SPLIT.ID是实库
PROJECT_ID项目主数据 IDLong / BIGINT否 / ——项目引用快照是实库
PROJECT_NAME项目名称快照String / VARCHAR(400)否 / ——计划项目快照是实库
DEPT_ID责任部门 IDLong / BIGINT是 / ——计划拆分快照是实库
DEPT_NAME责任部门名称快照String / VARCHAR(200)否 / ——计划拆分快照是实库
PLAN_YEAR计划/实施年度Integer / INT否 / ——计划 TARGET_YEAR是实库
PLAN_AMOUNT下达金额(亿元)BigDecimal / DECIMAL(18,2)否 / 0—计划拆分年度金额快照是实库
RECEIVER_USER_ID接收/填报人 IDLong / BIGINT否 / ——下达台账所选用户是实库
RECEIVER_USER_NAME接收/填报人姓名快照String / VARCHAR(100)否 / ——下达时用户快照是实库
STATUS下达/接收状态String / VARCHAR(20)否 / draft—下达动作直接生效后置为办结是实库
SENT_TIME下达时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—下达时记录/DB 默认是实库
REMARK下达说明String / VARCHAR(2000)是 / ——文件台账录入否实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BIIA_ISS_SPLIT(3)@TableLogic否实库

3.7 BIZ_INVEST_IMPLEMENTATION(下达部门逐月实施月报;实体 InvestmentImplementation) ​

字段中文含义逻辑 / 物理类型可空 / 默认主键、唯一、索引来源/生成规则核心核验
ID实施月报主键Long / BIGINT否 / —PK PK_BIIM,主键索引 INDEX33556419Service 雪花 ID是实库
ALLOCATION_ID下达责任拆分 IDLong / BIGINT否 / —IDX_BIIM_MONTH(1)逻辑关联 BIZ_INVEST_ISSUE_ALLOCATION.ID是实库
PLAN_YEAR计划年度Integer / INT否 / —IDX_BIIM_MONTH(2)下达分摊计划年度快照是实库
REPORT_MONTH月报月份(1–12)Integer / INT否 / —IDX_BIIM_MONTH(3)月报表单输入是实库
PLANNED_AMOUNT月度计划额(亿元)BigDecimal / DECIMAL(18,2)否 / 0—从计划拆分按月取值是实库
ACTUAL_AMOUNT月度实际完成额(亿元)BigDecimal / DECIMAL(18,2)否 / 0—月报表单输入是实库
PROGRESS_DESCRIPTION工程进展描述String / VARCHAR(2000)是 / ——月报表单输入是实库
ATTACHMENT_IDS月报附件 ID 集合String / VARCHAR(4000)是 / ——附件组件 ID 列表否实库
APPLICANT_USER_ID月报申请人 IDLong / BIGINT否 / ——当前登录用户是实库
APPLICANT_USER_NAME月报申请人姓名快照String / VARCHAR(100)否 / ——当前登录用户快照是实库
STATUS月报流程状态String / VARCHAR(20)否 / draft—Warm-Flow 事件回写是实库
INSTANCE_ID流程实例 IDLong / BIGINT是 / ——Warm-Flow 回写否实库
CURRENT_NODE_CODE当前流程节点编码String / VARCHAR(100)是 / ——Warm-Flow 回写否实库
CURRENT_NODE_NAME当前流程节点名称String / VARCHAR(200)是 / ——Warm-Flow 回写否实库
CURRENT_HANDLER_IDS当前办理人 ID 快照String / VARCHAR(1000)是 / ——流程待办人员快照否实库
CURRENT_HANDLER_NAMES当前办理人姓名快照String / VARCHAR(2000)是 / ——流程待办人员快照否实库
ENGINEERING_HANDLER_ID工程经办人Long / BIGINT是 / ——流程所选用户否实库
ENGINEERING_DEPUTY_ID工程副职审批人Long / BIGINT是 / ——流程所选用户否实库
ENGINEERING_DIRECTOR_ID工程部门负责人Long / BIGINT是 / ——流程所选用户是实库
SUBMIT_TIME月报提交/办结时间LocalDateTime / TIMESTAMP是 / ——提交或流程事件记录否实库
CREATE_DEPT创建部门审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_BY创建人审计 IDLong / BIGINT是 / ——BaseEntity否实库
CREATE_TIME创建时间LocalDateTime / TIMESTAMP是 / CURRENT_TIMESTAMP—BaseEntity/DB 默认否实库
UPDATE_BY更新人审计 IDLong / BIGINT是 / ——BaseEntity否实库
UPDATE_TIME更新时间LocalDateTime / TIMESTAMP是 / ——BaseEntity否实库
DEL_FLAG逻辑删除标志String / CHAR(1)否 / '0'IDX_BIIM_MONTH(4)@TableLogic否实库

月报 VO 中的 cumulativeBefore、cumulativeAfter 为派生展示字段,不持久化:以前期计划基线 EXPECTED_CUMULATIVE_END 加本年度此前月份已办结实绩动态计算,不在本表增加列。

4. 约束、索引与字典 ​

类型名称/表达式作用设计/物理差异核验
PKPK_BIP(ID)计划版本唯一标识无已按实际库核对
PKPK_BIPI(ID)计划项目唯一标识无已按实际库核对
PKPK_BIPS(ID)部门拆分唯一标识无已按实际库核对
PKPK_BII(ID)年度红头台账唯一标识无已按实际库核对
PKPK_BIIF(ID)附件引用唯一标识无已按实际库核对
PKPK_BIIA(ID)下达分摊唯一标识无已按实际库核对
PKPK_BIIM(ID)实施月报唯一标识无已按实际库核对
唯一索引UX_BII_YEAR(ISSUE_YEAR)每年唯一年度下达台账;软删除也占用年度无已按实际库核对
联合索引IDX_BIP_YEAR_ST(REPORT_YEAR,STATUS,DEL_FLAG)年度计划状态查询无已按实际库核对
联合索引IDX_BIPI_PLAN(PLAN_ID,DEL_FLAG)计划项目明细查询无已按实际库核对
联合索引IDX_BIPS_PLAN_ITEM(PLAN_ID,PLAN_ITEM_ID,DEL_FLAG)计划部门拆分查询无已按实际库核对
联合索引IDX_BII_YEAR(ISSUE_YEAR,DEL_FLAG)年度台账查询无已按实际库核对
联合索引IDX_BIIF_ISSUE(ISSUE_ID,DEL_FLAG)红头附件查询无已按实际库核对
联合索引IDX_BIIA_ISS_SPLIT(ISSUE_ID,PLAN_SPLIT_ID,DEL_FLAG)台账下达拆分/计划拆分关系查询无已按实际库核对
条件唯一索引UK_BIIA_ACTIVE_ISS_SPLIT(DEL_FLAG,PLAN_SPLIT_ID,ISSUE_ID)下达台账、计划拆分与有效标志的组合唯一开发库实际存在;约束组合以 MCP 回读列序为准主 Agent 经 dcp-dm8-dev 回读核对
联合索引IDX_BIIM_MONTH(ALLOCATION_ID,PLAN_YEAR,REPORT_MONTH,DEL_FLAG)责任拆分按年/月查询及月报重复校验普通索引;月唯一由行锁和 Service 校验保证已按实际库核对
逻辑唯一性(ALLOCATION_ID, PLAN_YEAR, REPORT_MONTH, DEL_FLAG='0')一个有效下达拆分年度月份最多一条月报开发库未建立条件唯一索引;Service 锁定分摊行后检查;重复月份 API 请求已拒绝;历史流程行保留API 回归通过
字典STATUS计划及月报采用 draft/waiting/back/finish;下达台账 draft/finish状态枚举来自平台 BusinessStatusEnum;库无 CHECK 约束代码/实库核对
字典PLAN_TYPEREPORT 普通上报、MODIFY 调整版本库无 CHECK 约束代码核对
字典CONSISTENCY_FLAG、CITY_FOCUS_FLAG、NOMINATED_FOCUS_FLAG'0' 否、'1' 是库无 CHECK 约束;服务和页面校验代码核对

DM8 实际还为七个主键生成物理唯一索引:INDEX33556407、INDEX33556409、INDEX33556411、INDEX33556413、INDEX33556415、INDEX33556417、INDEX33556419,分别对应 BIZ_INVEST_PLAN、BIZ_INVEST_PLAN_ITEM、BIZ_INVEST_PLAN_SPLIT、BIZ_INVEST_ISSUE、BIZ_INVEST_ISSUE_FILE、BIZ_INVEST_ISSUE_ALLOCATION、BIZ_INVEST_IMPLEMENTATION 的 ID。

5. 设计字段与实际字段差异 ​

表差异字段差异类型设计值实际值处理方式状态
七张业务表持久化列清单新表结构核对当前实体与业务契约字段7 表、159 列;逐列类型、精度、可空、默认值已由 MCP 回读以实际列全量矩阵作为开发基线已按实际库核对
四张状态表STATUS 默认值默认值不一致小写 draft初始 DDL 为大写 DRAFT/ACTIVE/SENT本次按 Service BusinessStatusEnum 通过 MCP 修改为 draft,写后回读已处理
BIZ_INVEST_IMPLEMENTATIONcumulativeBefore、cumulativeAfterVO 派生字段,非数据库列由已办结前序月报动态求和实际表不存在该两列仅 VO/表单响应计算;实体用 @TableField(exist=false),避免误写库实现核对中
七张业务表业务外键约束未建关系应由业务校验MCP 仅查得七个主键约束,没有物理外键Service 校验关联关系;无级联删除与设计一致

6. 迁移与兼容说明 ​

  • 本次通过 dcp-dm8-dev 项目 MCP 新建七张开发库表、索引和状态默认值;业务 DDL 不落仓库文件。生产环境部署方案和迁移脚本应在目标数据库确定后按其厂商规范另行生成及复核。
  • DM8 的 BIGINT、DECIMAL(18,2)、VARCHAR、CHAR、TIMESTAMP 和 CURRENT_TIMESTAMP 默认值均为当前实库事实,不替代跨库逻辑类型约束。特别需在人大金仓/openGauss 核实 TIMESTAMP 精度、默认表达式及唯一索引/条件唯一策略。
  • 所有非主键关联均为逻辑外键,数据库不会阻止孤儿 ID;新增、修改和下达服务必须继续校验源计划、项目、拆分、附件引用、接收人、状态和流程归属。BIZ_INVEST_ISSUE_ALLOCATION 的有效关联唯一性另由 UK_BIIA_ACTIVE_ISS_SPLIT(DEL_FLAG,PLAN_SPLIT_ID,ISSUE_ID) 条件唯一索引约束。
  • 月报有效月份唯一性由 IDX_BIIM_MONTH、责任拆分行锁、有效状态查询及 Service 事务共同保障。没有将其改为数据库唯一索引,以免退回/历史流程记录及 DM8 条件索引兼容受影响。
  • 当前 BUILD_STAGE 的「续建、开工」为原型观测到的暂定字典值;完整阶段字典来源待补,参见需求分析 的 Q-EI-017。

7. 端到端写入与回读 ​

2026-09-27 使用 E2E-INV-20260927 验收标记,经项目 MCP dm_query 回读投资业务表:计划 REPORT 版本 1 行、MODIFY 版本 1 行;项目明细 2 行、责任部门拆分 2 行;年度红头台账 1 行、附件关联 0 行;下达分配 1 行、实施月报 1 行。两版计划及下达/月报状态均为 finish。下达分配的 PLAN_ID、PLAN_SPLIT_ID 已指向 MODIFY 版本及其新拆分。月报实绩为 0.20 亿元,开发库验收工程和业务记录按用户要求保留。

上述回读只涵盖 DM8 开发库和本轮标记数据;目标生产数据库厂商及迁移执行尚未确定,登录后真实页面及文件服务上传也未通过本次数据库证据覆盖。