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