# 产品保险/合同方案验证调整 **日期**: 2026-03-22 **服务**: hl-product-service **类型**: fix + enhancement --- ## 功能说明 调整产品保险方案和合同方案的验证时机: 1. **创建产品(草稿)时**:`insuranceSchemeId` 和 `contractSchemeId` 改为**可选**,不再强制必填 2. **核心产品/小蒙马上架前**:校验必须已配置保险方案和合同方案,否则上架失败 3. **定制产品完成前**(DRAFT → COMPLETED):校验必须已配置保险方案和合同方案,否则完成失败 ## 影响接口 ### POST /admin/product (创建产品) **变更**:`insuranceSchemeId` 和 `contractSchemeId` 从必填改为可选 | 参数 | 类型 | 必填 | 说明 | |------|------|------|------| | insuranceSchemeId | Long | 否(原为是) | 保险方案ID,上架/完成前必须配置 | | contractSchemeId | Long | 否(原为是) | 合同方案ID,上架/完成前必须配置 | ### PUT /admin/product/{productId}/status (状态变更) **变更**:新增上架/完成前的方案校验 - **核心产品/小蒙马** 变更为 `PUBLISHED` 时,校验 `insuranceSchemeId` 和 `contractSchemeId` 非空 - **定制产品** 变更为 `COMPLETED` 时,校验 `insuranceSchemeId` 和 `contractSchemeId` 非空 - 校验失败返回错误信息,如:`上架校验不通过: 保险方案不能为空; 合同方案不能为空` ## 前端注意事项 - 产品编辑页保存草稿时,保险方案和合同方案可以留空 - 点击「上架」或定制产品点击「完成」时,后端会校验这两个字段 - 建议前端在上架/完成按钮点击前做前置校验提示,提升用户体验