比较提交

..
2 次代码提交
作者 SHA1 备注 提交日期
API Changelog Bot和Claude Haiku 4.5 35a67a6264 docs: #7767 补充第三个接口 transition 详情
changelog-filename-gate / validate (push) Failing after 2s
添加 POST /v3/admin/order/{id}/transition (eventCode=TERMINATE) 的完整接口文档,
说明该接口同样支持 584132/584100 错误码。

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-09-16 23:07:30 +08:00
API Changelog Bot和Claude Haiku 4.5 5997bc722e docs: #7767 补齐接口路径与前端pending状态
更正两个接口路径为 /terminate/refund-preview 与 /terminate(原误写 /terminate-refund/preview)
参数名统一为 {id}(原误写 {orderId})
变更前端状态为 pending(原误标为 verified)

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-09-16 23:07:30 +08:00
@@ -7,11 +7,11 @@ author: "wx(GIT)"
change_type: "修改接口"
backend_status: "deployed"
gateway_status: "verified"
frontend_status: "verified"
frontend_owner: "mmg"
frontend_ref: "a2a4e2ddae0508de89e941e308ffde5b1d9944c5"
frontend_status: "pending"
frontend_owner: ""
frontend_ref: ""
target_release: ""
verified_at: "2026-09-16"
verified_at: ""
status_note: "仅后端交付。新增错误码 584132 与修改的 584100 文案在源码与 API-SPEC 已核对;测试服验证见工单 #7767 验收评论。前端需补错误码 584132 的提示文案映射,误将两码混用则会给出不恰当的稍后重试建议。;前端 hl-admin a2a4e2dd 已实现:terminateRefund.js 补 584132 提示(等车务配车完成后再试)与 584100(稍后重试)语义区分,api docstring 同步,spec +1,checkpoint 全绿。"
updated_at: "2026-09-16"
base: "dev-v3"
@@ -48,14 +48,15 @@ base: "dev-v3"
| # | 接口 | 方法 | 路径 | 变更类型 | 说明 |
|---|------|------|------|----------|------|
| 1 | 终止行程·退款预览 | POST | `/v3/admin/order/{orderId}/terminate-refund/preview` | 修改 | 新增错误码 584132;修改 584100 文案与适用范围 |
| 2 | 终止行程 | POST | `/v3/admin/order/{orderId}/terminate` | 修改 | 新增错误码 584132;修改 584100 文案与适用范围 |
| 1 | 终止行程·退款预览 | POST | `/v3/admin/order/{id}/terminate/refund-preview` | 修改 | 新增错误码 584132;修改 584100 文案与适用范围 |
| 2 | 终止行程 | POST | `/v3/admin/order/{id}/terminate` | 修改 | 新增错误码 584132;修改 584100 文案与适用范围 |
| 3 | 状态变更(通用) | POST | `/v3/admin/order/{id}/transition` | 修改 | 当 eventCode=TERMINATE 时同样触发上述两个错误码 |
---
## 三、接口详情
### 1. 终止行程·退款预览 `POST /v3/admin/order/{orderId}/terminate-refund/preview`
### 1. 终止行程·退款预览 `POST /v3/admin/order/{id}/terminate/refund-preview`
**VO**: `(路径参数 → OrderTerminateRefundPreviewRespVO)`
@@ -67,13 +68,13 @@ base: "dev-v3"
| 字段 | 位置 | 类型 | 必填 | 约束 | 说明 |
|------|------|------|------|------|------|
| orderId | Path | Long | 是 | - | 订单 ID |
| id | Path | Long | 是 | - | 订单 ID |
#### 出参字段表
| 字段 | 类型 | 说明 |
|------|------|------|
| orderId | Long | 订单 ID |
| id | Long | 订单 ID |
| orderNo | String | 订单号 |
| usedDays | Integer | 已用天数(截至今日) |
| remainingDays | Integer | 剩余天数(今日之后) |
@@ -94,7 +95,7 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
"code": 200,
"message": "成功",
"data": {
"orderId": 1934567890123456789,
"id": 1934567890123456789,
"orderNo": "26-0503",
"usedDays": 2,
"remainingDays": 4,
@@ -160,7 +161,7 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
---
### 2. 终止行程 `POST /v3/admin/order/{orderId}/terminate`
### 2. 终止行程 `POST /v3/admin/order/{id}/terminate`
**VO**: `OrderTerminateTripReqVO → OrderTerminateTripRespVO`
@@ -172,7 +173,7 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
| 字段 | 位置 | 类型 | 必填 | 约束 | 说明 |
|------|------|------|------|------|------|
| orderId | Path | Long | 是 | - | 订单 ID |
| id | Path | Long | 是 | - | 订单 ID |
| cancelReason | Body | String | 是 | ≤500 字符 | 终止原因(运营内部备注) |
| endDayNumber | Body | Integer | 是 | 1 ≤ dayNumber ≤ 行程天数 | 终止日在行程中的序号(Day 1、Day 2 等) |
| vehicles | Body | List | 否 | - | 旧客户端兼容字段,新客户端可不传 |
@@ -181,7 +182,7 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
| 字段 | 类型 | 说明 |
|------|------|------|
| orderId | Long | 订单 ID |
| id | Long | 订单 ID |
| orderNo | String | 订单号 |
| status | String | 订单状态(转移为 COMPLETED) |
| terminateRefundRecord | Object | 退款记录快照 |
@@ -204,7 +205,7 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
"code": 200,
"message": "成功",
"data": {
"orderId": 1934567890123456789,
"id": 1934567890123456789,
"orderNo": "26-0503",
"status": "COMPLETED",
"terminateRefundRecord": {
@@ -247,6 +248,82 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
- **幂等**: 同一订单同一 endDayNumber 重复终止返 581049(已终止)
- **团车户与免车户放行**: 现已支持,按 DAILY_V3 规则正常处理
### 3. 状态变更·通用 `POST /v3/admin/order/{id}/transition`
**VO**: `OrderTransitionReqVO → OrderTransitionRespVO`
#### 使用场景
通用状态机触发端点。当 `eventCode=TERMINATE` 时等价于调用终止接口,触发同样的错误码 584132/584100。
#### 入参字段表
| 字段 | 位置 | 类型 | 必填 | 约束 | 说明 |
|------|------|------|------|------|------|
| id | Path | Long | ✅ | - | 订单ID |
| eventCode | Body | String | ✅ | - | 事件码(本变更涉及 TERMINATE) |
#### 出参字段表
| 字段 | 类型 | 说明 |
|------|------|------|
| success | Boolean | 是否成功 |
| oldStatus | String | 变更前粗状态 |
| newStatus | String | 变更后粗状态 |
#### 请求示例
```json
{
"eventCode": "TERMINATE",
"comment": "客户提前返程"
}
```
#### 响应示例
```json
{
"code": 200,
"message": "成功",
"data": {
"success": true,
"oldStatus": "TRAVELLING",
"newStatus": "COMPLETED"
},
"success": true
}
```
#### 空数据 / 降级响应
无。
#### 错误响应
```json
{
"code": 584132,
"message": "用车需求未完成,暂不能终止行程,请等车务配车完成后再试",
"success": false
}
```
```json
{
"code": 584100,
"message": "车务车辆总车费暂时不可用,请稍后重试",
"success": false
}
```
#### 业务边界
- **eventCode=TERMINATE**:触发终止行程逻辑,返回同样的错误码 584132/584100
- **失败回滚**:状态变更失败时不落库,可安全重试
---
## 四、契约约束与正确调用方式
@@ -327,7 +404,7 @@ GET /v3/admin/order/1934567890123456789/terminate-refund/preview
## 八、测试环境已验证
```
POST /v3/admin/order/{id}/terminate-refund/preview → 200 ✓
POST /v3/admin/order/{id}/terminate/refund-preview → 200 ✓
POST /v3/admin/order/{id}/terminate (GROUP_VEHICLE) → 200 ✓
POST /v3/admin/order/{id}/terminate (免车户) → 200 ✓
```