hl-api-changelog/changelogs/2026-03/2026-03-22_insurance_scheme_frontend_fix.md
API Changelog Bot 3eaef6732b changelog: 更正保险方案结束天-1说明(是约定值非BUG)
-1表示"到行程最后一天",前端需展示处理而非数据库修改。

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 21:26:39 +08:00

46 行
1.6 KiB
Markdown

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# 保险方案编辑页 — 结束天显示为 -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 |