比较提交
2
次代码提交
46909eba8d
...
35a67a6264
| 作者 | SHA1 | 提交日期 | |
|---|---|---|---|
|
|
35a67a6264 | ||
|
|
5997bc722e |
@@ -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 ✓
|
||||
```
|
||||
|
||||
在新工单中引用
屏蔽一个用户