# 招投标供应商校验调整实施记录

## 本次改动
- 招投标信息维护页面新增、编辑弹窗中的供应商明细校验调整为仅保留：
  - 供应商名称必填
  - 统一信用代码必填
- 移除了前端弹窗中供应商名称长度、统一信用代码格式、联系人长度、联系电话格式、银行账户长度校验。
- 移除了新增/编辑接口 DTO 中对应的供应商内容校验，确保真实页面保存链路与弹窗规则一致。

## 关键文件
- 前端
  - `ruoyi-ui/src/views/ccdiPurchaseTransaction/index.vue`
- 后端
  - `ccdi-info-collection/src/main/java/com/ruoyi/info/collection/domain/dto/CcdiPurchaseTransactionSupplierDTO.java`

## 验证结果
- 后端编译
  - 命令：`mvn -pl ccdi-info-collection -am -DskipTests compile`
  - 结果：通过。
- 后端重启
  - 命令：`sh bin/restart_java_backend.sh`
  - 结果：构建并重启成功。
- 前端构建
  - 命令：`source ~/.nvm/nvm.sh && nvm use 14.21.3 >/dev/null && cd ruoyi-ui && npm run build:prod`
  - 结果：通过，仅有既有产物体积 warning。
- Playwright 实页验证
  - 页面：`http://127.0.0.1:62319/maintain/purchaseTransaction`
  - 新增验证：
    - 采购事项ID：`AUTOBID20260423145630`
    - 供应商统一信用代码：`ABC`
    - 供应商联系电话：`123`
    - 结果：新增成功。
  - 编辑验证：
    - 项目名称改为：`校验放开回归项目-145630-编辑`
    - 供应商统一信用代码改为：`XYZ`
    - 供应商联系电话改为：`abc123`
    - 结果：修改成功。
  - 清理验证：
    - 删除 `AUTOBID20260423145630`
    - 结果：删除成功，列表总数回到 `2004`。

## 过程说明
- 首轮真实页验证发现，前端规则放开后，新增接口仍因 `CcdiPurchaseTransactionSupplierDTO` 的 Bean Validation 拦截 `supplierUscc` 和 `contactPhone`。
- 因此本次最终方案同时调整了前端弹窗规则与后端 DTO 校验，保证页面行为与需求一致。
