-1表示"到行程最后一天",前端需展示处理而非数据库修改。 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1.6 KiB
1.6 KiB
保险方案编辑页 — 结束天显示为 -1 的处理
日期: 2026-03-22 页面: 保险管理 → 保险方案 → 编辑方案 类型: 前端展示优化
问题描述
保险方案编辑弹窗中,第2段的"结束天"显示为 -1,看起来像数据错误,但实际上 -1 是后端约定的特殊值,表示"到行程最后一天"。
数据库中 day_offset_end = -1 表示该段覆盖到行程结束,后端投保时会自动用方案的 total_days 替换 -1。
前端需要处理
1. 编辑表单中展示 -1 的处理
方式A(推荐):将"结束天"改为下拉或单选:
- 选项1: 输入具体天数(
<el-input-number :min="起始天") - 选项2: "到行程结束"(提交时传
-1)
方式B(简单):在结束天输入框旁显示提示文字:
- 当值为
-1时,显示"(到最后一天)" <el-input-number>的:min设为-1(允许 -1 这个特殊值)
2. 列表中展示
如果列表展示了结束天,-1 应显示为"最后一天"或替换为方案的 totalDays 值。
3. 其他表单校验仍建议加上
- 起始天:
>= 1 - 排序:
>= 0 - 结束天为正数时:
>= 起始天
数据说明
当前所有多段方案的最后一段 day_offset_end 都是 -1,这是正常数据,不需要修改数据库:
| 方案 | 第1段结束天 | 第2段结束天 |
|---|---|---|
| 4日行程 | 2 | -1(=4) |
| 5日行程 | 2 | -1(=5) |
| 6日行程 | 3 | -1(=6) |
| 7日行程 | 3 | -1(=7) |
| 8日行程 | 4 | -1(=8) |