267 行
8.6 KiB
Markdown
267 行
8.6 KiB
Markdown
# 退役行程编辑历史接口——删除 edit-log/page 端点 + 7 个写接口响应删 editLogId 字段
|
||
|
||
> 端类型:管理后台
|
||
> 变更类型:删除接口(⚠️ 破坏性,前端需清理依赖)
|
||
> 涉及接口:
|
||
> - `GET /v3/admin/order/{orderId}/itinerary/edit-log/page`(已下线,调用返 404)
|
||
> - `POST /v3/admin/order/{orderId}/itinerary/days`(响应删 `editLogId`)
|
||
> - `PUT /v3/admin/order/{orderId}/itinerary/days/{dayId}`(响应删 `editLogId`)
|
||
> - `DELETE /v3/admin/order/{orderId}/itinerary/days/{dayId}`(响应删 `editLogId`)
|
||
> - `POST /v3/admin/order/{orderId}/itinerary/nodes`(响应删 `editLogId`)
|
||
> - `PUT /v3/admin/order/{orderId}/itinerary/nodes/{nodeId}`(响应删 `editLogId`)
|
||
> - `DELETE /v3/admin/order/{orderId}/itinerary/nodes/{nodeId}`(响应删 `editLogId`)
|
||
> - `POST /v3/admin/order/{orderId}/itinerary/save`(响应删 `editLogIds` 数组)
|
||
|
||
---
|
||
|
||
## ① 接口背景
|
||
|
||
搭建期行程节点的单点编辑历史(`order_itinerary_edit_log` 表)已退役:搭建阶段的编辑操作不再留痕,后续调整记录改由「调整记录」(`order_adjustment_record`)承接(见 PR #4556)。本次退役操作包含:
|
||
1. 下线「行程编辑历史分页」查询端点。
|
||
2. 7 个行程写操作的响应 VO 删除 `editLogId` / `editLogIds` 字段(原用于记录 Tab 跳转定位,不再有意义)。
|
||
|
||
---
|
||
|
||
## ② 变更清单
|
||
|
||
| 编号 | 类型 | 说明 |
|
||
|---|---|---|
|
||
| 1 | ⚠️ 删除接口 | `GET /v3/admin/order/{orderId}/itinerary/edit-log/page` **已下线,调用返 404** |
|
||
| 2 | ⚠️ 删除字段 | `ItineraryDayRespVO` 删除 `editLogId`(Long/String)字段 |
|
||
| 3 | ⚠️ 删除字段 | `ItineraryNodeRespVO` 删除 `editLogId`(Long/String)字段 |
|
||
| 4 | ⚠️ 删除字段 | `ItinerarySaveRespVO` 删除 `editLogIds`(Long 数组)字段 |
|
||
| 5 | 保留入参 | `editReason` 入参字段**保留**(后端接受但不再审计落库,不影响前端调用) |
|
||
|
||
---
|
||
|
||
## ③ 接口详情
|
||
|
||
### 已下线接口:GET /v3/admin/order/{orderId}/itinerary/edit-log/page
|
||
|
||
⚠️ **本接口已永久下线。调用时网关/服务返回 404 Not Found,不再响应任何请求。**
|
||
|
||
| 项目 | 说明 |
|
||
|---|---|
|
||
| 方法 | GET(已下线) |
|
||
| 路径 | `/v3/admin/order/{orderId}/itinerary/edit-log/page` |
|
||
| 状态 | **已删除,请勿调用** |
|
||
|
||
### 保留接口(响应字段有变):行程写操作接口群
|
||
|
||
以下 7 个接口**路径和方法不变**,仅出参删字段:
|
||
|
||
| 方法 | 路径 | 接口名 | 删除字段 |
|
||
|---|---|---|---|
|
||
| POST | `/v3/admin/order/{orderId}/itinerary/days` | 新增行程天 | `editLogId` |
|
||
| PUT | `/v3/admin/order/{orderId}/itinerary/days/{dayId}` | 修改行程天 | `editLogId` |
|
||
| DELETE | `/v3/admin/order/{orderId}/itinerary/days/{dayId}` | 删除行程天 | `editLogId` |
|
||
| POST | `/v3/admin/order/{orderId}/itinerary/nodes` | 新增行程节点 | `editLogId` |
|
||
| PUT | `/v3/admin/order/{orderId}/itinerary/nodes/{nodeId}` | 修改行程节点 | `editLogId` |
|
||
| DELETE | `/v3/admin/order/{orderId}/itinerary/nodes/{nodeId}` | 删除行程节点 | `editLogId` |
|
||
| POST | `/v3/admin/order/{orderId}/itinerary/save` | 批量保存行程 | `editLogIds`(数组) |
|
||
|
||
---
|
||
|
||
## ④ 接口入参
|
||
|
||
7 个保留接口的入参**无变化**。`editReason` 字段仍可传(接受但不落库)。
|
||
|
||
---
|
||
|
||
## ⑤ 出参字段
|
||
|
||
### ItineraryDayRespVO(删 editLogId)
|
||
|
||
以下字段已从新增/修改/删除行程天的响应中移除:
|
||
|
||
| 字段 | 原类型 | 变更 |
|
||
|---|---|---|
|
||
| `editLogId` | String(Long 序列化) | ⚠️ **已删除** |
|
||
|
||
其余字段(`id` / `dayNumber` / `dayDate` / `theme` / `description` / `nodes[]` / `adjustmentId` / `createTime` 等)不变。
|
||
|
||
### ItineraryNodeRespVO(删 editLogId)
|
||
|
||
| 字段 | 原类型 | 变更 |
|
||
|---|---|---|
|
||
| `editLogId` | String(Long 序列化) | ⚠️ **已删除** |
|
||
|
||
其余字段不变。
|
||
|
||
### ItinerarySaveRespVO(删 editLogIds)
|
||
|
||
| 字段 | 原类型 | 变更 |
|
||
|---|---|---|
|
||
| `editLogIds` | List<Long> | ⚠️ **已删除** |
|
||
|
||
现有出参字段(`savedDayIds` / `savedNodeIds` / `deletedDayIds` / `deletedNodeIds`)不变。
|
||
|
||
---
|
||
|
||
## ⑥ 枚举 / 数据字典
|
||
|
||
无新增枚举变更。
|
||
|
||
---
|
||
|
||
## ⑦ 错误码
|
||
|
||
| 接口 | code | message | 说明 |
|
||
|---|---|---|---|
|
||
| 已下线端点 | 404 | 接口不存在 | 调用旧路径返回此错误 |
|
||
|
||
---
|
||
|
||
## ⑧ 示例
|
||
|
||
### 8.1 典型成功——新增行程天响应(editLogId 已不存在)
|
||
|
||
**请求**
|
||
|
||
```http
|
||
POST /v3/admin/order/7910000000001/itinerary/days
|
||
Authorization: Bearer <token>
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"theme": "天池徒步",
|
||
"description": "长白山天池观景台",
|
||
"editReason": "补充行程细节"
|
||
}
|
||
```
|
||
|
||
**响应(editLogId 字段已删除)**
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "success",
|
||
"data": {
|
||
"id": "8801234567890",
|
||
"dayNumber": 3,
|
||
"dayDate": "2026-08-03",
|
||
"theme": "天池徒步",
|
||
"description": "长白山天池观景台",
|
||
"nodes": [],
|
||
"adjustmentId": null,
|
||
"createTime": "2026-06-28T15:30:00"
|
||
}
|
||
}
|
||
```
|
||
|
||
> 注意:响应中**不含 `editLogId` 字段**,原来前端读取的 `data.editLogId` 现在为 `undefined`,请清理相关依赖。
|
||
|
||
### 8.2 边界情况——批量保存响应(editLogIds 已不存在)
|
||
|
||
**请求**
|
||
|
||
```http
|
||
POST /v3/admin/order/7910000000001/itinerary/save
|
||
Authorization: Bearer <token>
|
||
Content-Type: application/json
|
||
|
||
{
|
||
"days": [ ... ]
|
||
}
|
||
```
|
||
|
||
**响应(editLogIds 数组已删除)**
|
||
|
||
```json
|
||
{
|
||
"code": 200,
|
||
"message": "success",
|
||
"data": {
|
||
"savedDayIds": ["8801234567890"],
|
||
"savedNodeIds": ["8811234567890", "8811234567891"],
|
||
"deletedDayIds": [],
|
||
"deletedNodeIds": []
|
||
}
|
||
}
|
||
```
|
||
|
||
### 8.3 业务失败——调用已下线的旧路径
|
||
|
||
**请求**
|
||
|
||
```http
|
||
GET /v3/admin/order/7910000000001/itinerary/edit-log/page
|
||
Authorization: Bearer <token>
|
||
```
|
||
|
||
**响应(404,旧路径已删)**
|
||
|
||
```json
|
||
{
|
||
"code": 404,
|
||
"message": "接口不存在: GET /v3/admin/order/{id}/itinerary/edit-log/page",
|
||
"data": null
|
||
}
|
||
```
|
||
|
||
---
|
||
|
||
## ⑨ 业务边界
|
||
|
||
**不适用:**
|
||
- 旧的「行程编辑历史」分页功能已永久下线,无法通过任何方式恢复调用。
|
||
- 搭建期单点编辑操作不再审计留痕(若需调整记录,使用调整弹窗 submit,走「调整记录」接口 PR #4556)。
|
||
|
||
**特殊边界:**
|
||
- `editReason` 入参字段可以继续传(后端不报错),但值被忽略,不再写入任何审计表。前端无需改传参代码,但继续传入对服务端无实际效果。
|
||
|
||
---
|
||
|
||
## ⑩ 修改前后对比
|
||
|
||
### 接口变更
|
||
|
||
| 接口 | 修改前 | 修改后 |
|
||
|---|---|---|
|
||
| `GET .../itinerary/edit-log/page` | 正常返回 PageResult<EditLogVO> | **已下线,返回 404** |
|
||
| 行程写操作 7 个接口 | 响应含 `editLogId` / `editLogIds` | **响应不含该字段** |
|
||
|
||
### 字段级对比
|
||
|
||
#### ItineraryDayRespVO / ItineraryNodeRespVO
|
||
|
||
| 字段 | 修改前 | 修改后 |
|
||
|---|---|---|
|
||
| `editLogId` | String,本次写入的 edit_log 主键 | ⚠️ **已删除,不存在** |
|
||
|
||
#### ItinerarySaveRespVO
|
||
|
||
| 字段 | 修改前 | 修改后 |
|
||
|---|---|---|
|
||
| `editLogIds` | List<Long>,本次产生的 edit_log id 列表 | ⚠️ **已删除,不存在** |
|
||
|
||
---
|
||
|
||
## ⑪ 影响评估 / 回滚
|
||
|
||
**前端需做的改造:**
|
||
1. 删除对 `GET .../itinerary/edit-log/page` 的调用及相关 UI(行程编辑历史列表)。
|
||
2. 删除读取 `data.editLogId` 的代码(行程天/节点写操作响应)。
|
||
3. 删除读取 `data.editLogIds` 的代码(批量保存行程响应)。
|
||
|
||
**回滚方案:**
|
||
本次是纯删除,字段/端点已从代码移除。若需回滚,需后端重新发版恢复,前端无单独回滚方案。**建议前端同步本次上线部署后立即清理依赖,避免读 undefined 字段引发运行时错误。**
|
||
|
||
---
|
||
|
||
## ⑫ 注意事项
|
||
|
||
1. **旧路径 404**:`edit-log/page` 已彻底下线,务必在本次联调前删除调用代码,否则页面会出现 404 请求错误。
|
||
2. **editLogId 变 undefined**:行程写操作响应不再包含 `editLogId`,若前端曾用此值做「记录 Tab 跳转定位」,该功能需同步下线或改用时间线接口。
|
||
3. **editLogIds 变 undefined**:批量保存响应中 `editLogIds` 数组已删,若前端有读取逻辑需一并清理。
|
||
4. **editReason 入参可保留**:入参字段 `editReason` 仍可传(后端不报错),不强制移除,但其值不再产生任何审计记录。
|
||
|
||
---
|
||
|
||
## ⑬ 关联 / 联系人
|
||
|
||
- Issue:[#4565](https://git.1814.love:8443/wx/HL/issues/4565)
|
||
- PR:[#4569](https://git.1814.love:8443/wx/HL/pulls/4569)
|
||
- Commit:[a5a321ebe](https://git.1814.love:8443/wx/HL/commit/a5a321ebecb58b0b656d2889b00612ee28ef3862)
|
||
- 后端负责人:腰苏图(yst)
|