# 招投标信息维护后端实施计划

## 目标
- 将现有 `purchaseTransaction` 后端链路改造为“招投标主信息 + 供应商明细子表”结构。
- 保留原有 URL、权限前缀和内部类名，统一用户可见文案为“招投标信息维护”。
- 支持详情查询返回全部供应商明细，列表返回中标供应商摘要和参与供应商数。
- 支持双 Sheet 导入模板与按 `purchaseId` 聚合校验的异步导入。

## 实施内容
- 数据层
  - 新增 `ccdi_purchase_transaction_supplier` 明细表初始化 SQL 与增量迁移脚本。
  - 迁移脚本回填历史中标供应商数据，并将菜单名称更新为“招投标信息维护”。
- 领域模型
  - 新增供应商 entity、DTO、VO、Excel 模型。
  - 主 DTO/VO 增加 `supplierList`，主 VO 增加 `supplierCount`。
  - 主 Excel 模板改为仅承载招投标主信息，供应商明细独立建模。
- 接口与服务
  - 列表 SQL 增加供应商数聚合。
  - 详情查询补充供应商明细列表。
  - 新增/修改时由 `supplierList` 自动回填主表中标供应商摘要字段。
  - 删除主记录时级联删除供应商明细。
  - 导入链路改为“双 Sheet 读取 + 按事项聚合校验 + 主从同落库”。
- 项目专项核查
  - 项目采购详情 VO、Mapper、Service 增加供应商明细查询能力，保持项目详情与信息维护详情口径一致。

## 验证
- `mvn -pl ccdi-info-collection,ccdi-project -am -DskipTests compile`
- `./bin/restart_java_backend.sh restart`
- 浏览器验证列表接口、详情接口与项目详情供应商明细展示。

## 产出文件
- `sql/ccdi_purchase_transaction.sql`
- `sql/ccdi_purchase_transaction_menu.sql`
- `sql/migration/2026-04-22-bidding-info-maintenance-supplier-detail.sql`
- `ccdi-info-collection` 与 `ccdi-project` 相关后端代码
