frontend-bug: 合同列表签约模式列用 modeLabel 不是 mode (@mmg)

这个提交包含在:
API Changelog Bot 2026-05-04 13:50:58 +08:00
父节点 1c69282e56
当前提交 42753b3d73

查看文件

@ -0,0 +1,60 @@
---
date: 2026-05-04
type: frontend-bug
module: contract-list
priority: medium
notify: ["@mmg"]
status: pending
---
# 合同列表"签约模式"列显示 ONLINE 应显示"线上签署"
## 现象
`/admin/contract/list` 页面"签约模式"列显示原始 enum value:
```
ONLINE / OFFLINE / SMS
```
应显示中文 label:
```
线上签署 / 线下签署 / 短信签署
```
## 根因
后端 `/admin/contract/list` 已返回 `modeLabel` 字段(中文):
```json
{
"code": 200,
"data": {
"list": [{
"contractId": "...",
"mode": "ONLINE", // ← enum value
"modeLabel": "线上签署", // ← 中文 label, 前端直接用这个
"platform": "12301",
"...": "..."
}]
}
}
```
前端模板里写的应该是 `{{ row.mode }}`,改成 `{{ row.modeLabel }}` 即可。
## 同模式字段(一并检查)
后端返回的 `*Label` 字段都该用:
| 列 | enum 字段 | 中文 label 字段 |
|----|-----------|-----------------|
| 签约模式 | `mode` | `modeLabel` |
| 合同类型 | `contractType` | `contractTypeLabel` |
| 状态 | `status` | `statusLabel` |
打开合同列表页若发现其他列也是英文 enum,按同样规则改。
## 后端零改动
后端 VO 早已含三个 `*Label` 字段,看 `ContractListRespVO` 即可。无需后端 PR。
@mmg 修一下渲染字段即可,应该是 1 行 template 改动。