56 行
2.1 KiB
Markdown
56 行
2.1 KiB
Markdown
# 小程序每日详情字段补全
|
||
|
||
- **日期**: 2026-04-16
|
||
- **服务**: hl-product-service-v2
|
||
- **PR**: #669, #671
|
||
- **类型**: feat
|
||
|
||
## 概述
|
||
|
||
小程序产品详情 `GET /mp/product/{id}` 的行程天(`itinerary[]`)补全所有每日详情页所需字段。
|
||
|
||
## itinerary[] 完整字段清单
|
||
|
||
| 字段 | 类型 | 说明 |
|
||
|------|------|------|
|
||
| `dayNumber` | Integer | 天序号 |
|
||
| `dayTitle` | String | 标题 |
|
||
| `quoteText` | String | 每日金句 |
|
||
| `description` | String | 描述 |
|
||
| `coverImageUrl` | String | 封面图 |
|
||
| `gatherPlace` | Object | 集合地 {name,adcode,center,level} |
|
||
| `dismissalPlace` | Object | 解散地 {name,adcode,center,level} |
|
||
| `dailyMileage` | BigDecimal | 当日里程(km) |
|
||
| `dailyDuration` | Integer | 当日驾车时长(分钟) |
|
||
| `breakfast` | String | 早餐(HOTEL/CAMP/SPECIAL/SELF) |
|
||
| `lunch` | String | 午餐 |
|
||
| `dinner` | String | 晚餐 |
|
||
| `diningRemark` | String | 餐饮备注 |
|
||
| `photoUrls` | List | 实拍照片 |
|
||
| `routePoints` | List | 途经路线 [{name, sortOrder}] |
|
||
| `nodes` | List | 节点列表 [{nodeType, nodeName, startTime, durationMinutes, description}] |
|
||
| `hotels` | List | 住宿列表 [{hotelName, tierSeq, roomTypeId, roomTypeName, roomCount}] |
|
||
|
||
## 新增字段(本次PR)
|
||
|
||
| 字段 | 说明 |
|
||
|------|------|
|
||
| `quoteText` | 每日金句 |
|
||
| `diningRemark` | 餐饮备注 |
|
||
| `dailyMileage` | 当日里程 |
|
||
| `dailyDuration` | 当日驾车时长 |
|
||
| `routePoints` | 途经路线(自动生成) |
|
||
|
||
## 前端每日详情页数据对照
|
||
|
||
| 展示区块 | 数据来源 |
|
||
|---------|---------|
|
||
| 途经路线(海拉尔→呼籁营地→额尔古纳) | `routePoints[].name` 用 " → " 连接 |
|
||
| 290km · 约3.5小时 | `dailyMileage` + `dailyDuration`(分钟→小时格式化) |
|
||
| 金句引用 | `quoteText` |
|
||
| 行程详情(节点列表) | `nodes[]` |
|
||
| 实拍照片 | `photoUrls[]` |
|
||
| 今日概况(里程/餐饮/目的地) | `dailyMileage` / `breakfast,lunch,dinner` / `dismissalPlace.name` |
|
||
| 住宿(按档位分组) | `hotels[]` 按 `tierSeq` 分组 |
|
||
| 今日体验 | `nodes[]` 中 `nodeType=ACTIVITY` 的项 |
|