feat: 产品v2新增计算行程总里程接口 + 行程酒店快照补全 + Step1支付字段恢复

这个提交包含在:
API Changelog Bot 2026-04-13 18:12:41 +08:00
父节点 90559076a3
当前提交 dbd5796c17

查看文件

@ -0,0 +1,61 @@
# 产品v2 - 新增自动计算行程总里程接口
**日期**: 2026-04-13
**服务**: product-service-v2
**类型**: 新增接口
**PR**: #431
---
## 新增接口
### `GET /admin/product/item/{productId}/calculate-mileage`
根据行程途经点坐标,调用高德驾车路线规划API自动计算总驾驶里程。
**前提条件**: 产品必须已保存行程(Step2),且行程中至少有2个有效途经点有经纬度坐标
**请求参数**: 无productId在路径中
**返回示例**:
```json
{
"code": 200,
"data": 1234.5,
"msg": "success"
}
```
| 字段 | 类型 | 说明 |
|------|------|------|
| data | BigDecimal | 总里程(km),保留1位小数 |
**错误情况**:
- 行程途经点不足2个返回错误提示
- 高德API调用失败返回错误提示
## 使用场景
Step3"路线与备品"页面,前端可调用此接口获取自动计算的里程值,填充到"总里程"输入框中。
**建议交互**:
- 进入Step3时,若总里程为空,自动调一次此接口获取里程
- 提供"自动计算"按钮,点击时调用此接口刷新里程值
- 用户仍可手动修改覆盖自动计算的值
## 同时修复
### 行程酒店名快照补全
Step2行程保存时,如果住宿节点(accommodations)传了`resourceId`但没传`hotelName`,后端会自动通过Feign查询酒店名称填充。前端无需改动。
### Step1 支付字段恢复
`POST /admin/product/item/basic` 请求体恢复以下字段:
| 字段 | 类型 | 说明 |
|------|------|------|
| paymentType | String | 支付方式(字典payment_type: FULL=全款, DEPOSIT=订金+尾款) |
| depositRatio | BigDecimal | 订金比例(0-100),paymentType=DEPOSIT时必填 |
| depositDeadlineDays | Integer | 尾款截止天数(出发前N天),paymentType=DEPOSIT时必填 |