diff --git a/changelogs/2026-03/2026-03-20_contract_scheme_updates.md b/changelogs/2026-03/2026-03-20_contract_scheme_updates.md index c9cb56d..b4f1bed 100644 --- a/changelogs/2026-03/2026-03-20_contract_scheme_updates.md +++ b/changelogs/2026-03/2026-03-20_contract_scheme_updates.md @@ -106,6 +106,59 @@ --- +## 五、合同方案响应新增回显字段 + 字段别名 + +### 变更说明 + +合同方案响应(`ContractSchemeVO`)新增以下字段,解决**编辑回显**和**字段命名统一**问题: + +| 新增字段 | 类型 | 说明 | +|----------|------|------| +| `templateCode` | String | 合同模板编码(与 `contractTemplateCode` **相同值**,方便前端统一使用 `templateCode` 绑定下拉) | +| `contractTemplateName` | String | 合同模板名称(回显用,如"国内旅游合同-标准版") | +| `agencyName` | String | 旅行社名称(回显用,如"内蒙古呼籁国际旅行社有限公司") | + +### 保存时字段兼容 + +保存(创建/更新)时,**`contractTemplateCode` 和 `templateCode` 都接受**。前端可以统一用 `templateCode` 作为合同模板下拉的 `value` 字段。 + +```json +// 以下两种写法等价: +{ "contractTemplateCode": "A00001", ... } +{ "templateCode": "A00001", ... } +``` + +### 前端使用方式 + +1. **模板下拉绑定**:用 `templateCode` 作为下拉的 `v-model` 绑定值 +2. **编辑回显**:方案详情返回的 `templateCode` 可直接匹配模板列表的 `templateCode` +3. **模板名称显示**:列表页可直接用 `contractTemplateName` 显示模板名称,无需额外查询 +4. **旅行社名称显示**:列表页可用 `agencyName` 显示旅行社名称 + +### 完整响应示例 + +```json +{ + "schemeId": "123456789", + "name": "标准国内电子签约方案", + "contractPlatform": "12301", + "contractTemplateCode": "A00001", + "templateCode": "A00001", + "contractTemplateName": "国内旅游合同-标准版", + "contractMode": "STANDARD", + "signatoryMode": 1, + "agencyCode": "agency_hlgj", + "agencyName": "内蒙古呼籁国际旅行社有限公司", + "disputeResolution": 1, + "transactorName": "张三", + "transactorPhone": "13800138000", + "sortOrder": 0, + "status": "ACTIVE" +} +``` + +--- + ## 前端重点调整总结 | 页面 | 调整项 | @@ -113,3 +166,5 @@ | 合同方案新增/编辑表单 | "旅行社"去掉必填星号,允许不选 | | 合同方案新增/编辑表单 | "合同模板"下拉根据选择的"合同平台"联动筛选,调用 `/admin/contract/templates?platform=xxx` | | 合同方案新增/编辑表单 | 切换合同平台时清空已选的合同模板 | +| 合同方案新增/编辑表单 | 模板下拉 `v-model` 绑定 `templateCode`(保存和回显统一使用此字段) | +| 合同方案列表页 | 可用 `contractTemplateName` 和 `agencyName` 直接显示名称 |