changelog: 87da085 - feat: 产品统一保存接口 + 资源价格日历字段增强 + Knife4j分组名修复
这个提交包含在:
父节点
596d8fff1c
当前提交
96fa2f024c
@ -0,0 +1,181 @@
|
||||
# 接口变更记录 — 2026-03-17 12:44
|
||||
|
||||
> **提交** `87da085` · **作者** wx · **时间** 2026-03-17 12:44:59 +0800
|
||||
>
|
||||
> feat: 产品统一保存接口 + 资源价格日历字段增强 + Knife4j分组名修复
|
||||
|
||||
## 变更总览
|
||||
|
||||
- **产品服务**
|
||||
- Product (+1)
|
||||
|
||||
---
|
||||
|
||||
## 产品服务
|
||||
|
||||
### Product
|
||||
|
||||
#### 🆕 `POST` /admin/product/item/save — 保存产品(统一创建/更新)
|
||||
|
||||
**请求体** `ProductSaveRequest`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `productId` | `Long` | 产品ID(传入则更新,不传则创建) |
|
||||
| `name` | `String` | 产品名称 |
|
||||
| `subtitle` | `String` | 副标题 |
|
||||
| `productType` | `String` | 产品类型:CORE=核心产品 ROUTE=线路产品 CUSTOM=定制产品 GROUP=小蒙马拼团(创建时必填,更新时忽略) |
|
||||
| `tripDays` | `Integer` | 行程天数 |
|
||||
| `departureCity` | `String` | 出发城市 |
|
||||
| `destinationCity` | `String` | 目的地城市 |
|
||||
| `seasons` | `List<String>` | 适用季节列表,如 [\ |
|
||||
| `tags` | `List<String>` | 产品标签列表,如 [\ |
|
||||
| `isBooking` | `Boolean` | 是否预约产品 |
|
||||
| `adultCount` | `Integer` | 成人人数 |
|
||||
| `childCount` | `Integer` | 儿童人数 |
|
||||
| `youngChildCount` | `Integer` | 小童人数 |
|
||||
| `babyCount` | `Integer` | 婴儿人数 |
|
||||
| `minAdultPerOrder` | `Integer` | 每单最少成人数(不填默认1) |
|
||||
| `maxAdultPerOrder` | `Integer` | 每单最大成人数(不填则不限制) |
|
||||
| `maxChildPerOrder` | `Integer` | 每单最大儿童数(不填则不限制) |
|
||||
| `coverImageUrl` | `String` | 封面图URL |
|
||||
| `carouselImages` | `List<String>` | 轮播图列表 |
|
||||
| `carouselVideoUrl` | `String` | 轮播视频URL |
|
||||
| `folderId` | `String` | 所属文件夹ID |
|
||||
| `lineId` | `String` | 产品线ID |
|
||||
| `creatorAvatarUrl` | `String` | 定制师头像URL |
|
||||
| `creatorIntro` | `String` | 创作者寄语 |
|
||||
| `groupChatQrUrl` | `String` | 群聊二维码URL |
|
||||
| `chatMessages` | `List<ChatMessageVO>` | 群聊消息列表 |
|
||||
| `showReview` | `Boolean` | 是否显示评价 |
|
||||
| `showChatGroup` | `Boolean` | 是否显示群聊入口 |
|
||||
| `showTripTime` | `Boolean` | 是否显示行程时间 |
|
||||
| `showTripDistance` | `Boolean` | 是否显示行程距离 |
|
||||
| `bookingNotice` | `String` | 预定须知 |
|
||||
| `cancelPolicy` | `String` | 退改政策 |
|
||||
| `warmTips` | `String` | 温馨提示 |
|
||||
| `customizerId` | `String` | 定制师ID |
|
||||
| `sortOrder` | `Integer` | 排序序号 |
|
||||
| `teamExperienceYears` | `Integer` | 团队经验年数 |
|
||||
| `lineSubtitle` | `String` | 产品线副标题 |
|
||||
| `mchId` | `String` | 商户号:shanhe/wenlu |
|
||||
| `groupRoomId` | `String` | 企微群聊ID(用于会话存档展示群消息) |
|
||||
|
||||
**响应** `Result<ProductVO>`
|
||||
|
||||
---
|
||||
|
||||
## 📦 其他数据对象变更
|
||||
|
||||
> 以下变更未直接关联到本次接口变更,但可能影响现有接口的请求/响应
|
||||
|
||||
### 保险服务
|
||||
|
||||
#### ✏️ PolicyShareVO
|
||||
|
||||
- ✏️ `pdfBase64`: 说明 "merged PDF as base64" → "合并后的PDF(Base64编码)"
|
||||
- ✏️ `personName`: 说明 "insured person name" → "被保人姓名"
|
||||
- ✏️ `policyCount`: 说明 "number of policies included" → "包含的保单数量"
|
||||
- ✏️ `failedCount`: 说明 "number of policies that failed to download (skipped)" → "下载失败的保单数量(已跳过)"
|
||||
|
||||
#### ✏️ SharePolicyRequest
|
||||
|
||||
- ✏️ `orderId`: 说明 "travel order ID" → "旅游订单ID"
|
||||
- ✏️ `insuredName`: 说明 "insured person name" → "被保人姓名"
|
||||
- ✏️ `insuredIdCardNo`: 说明 "insured person ID card number" → "被保人证件号码"
|
||||
|
||||
### 资源服务
|
||||
|
||||
#### ✏️ PriceCalendarDayVO
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`, 说明 "状态:0=不可租 1=可租" → "日历状态(字典 calendar_status:AVAILABLE=可售 SOLD_OUT=已售罄 CLOSED=已关闭)"
|
||||
|
||||
#### ✏️ PriceCalendarSetRequest
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`, 说明 "状态:0=不可租 1=可租" → "日历状态(字典 calendar_status:AVAILABLE=可售 SOLD_OUT=已售罄 CLOSED=已关闭)"
|
||||
|
||||
#### ✏️ PriceCalendarStatusRequest
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`, 说明 "状态:0=不可租 1=可租" → "目标状态(字典 calendar_status:AVAILABLE=可售 SOLD_OUT=已售罄 CLOSED=已关闭)"
|
||||
|
||||
## 📋 实体变更
|
||||
|
||||
### ✏️ ActivityPriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
### ✏️ CostPriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
### ✏️ RoomPriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
### ✏️ ScenicPriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
### ✏️ ServicePriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
### ✏️ StaffPriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
### ✏️ VehiclePriceCalendar
|
||||
|
||||
- ✏️ `status`: 类型 `Integer` → `String`
|
||||
|
||||
<details>
|
||||
<summary>📁 全部变更文件 (点击展开)</summary>
|
||||
|
||||
```
|
||||
M hl-insurance-service/src/main/java/com/hulalv/insurance/config/Knife4jConfig.java
|
||||
M hl-insurance-service/src/main/java/com/hulalv/insurance/dto/SharePolicyRequest.java
|
||||
M hl-insurance-service/src/main/java/com/hulalv/insurance/service/BaoyouApiClient.java
|
||||
M hl-insurance-service/src/main/java/com/hulalv/insurance/service/InsuranceProductSyncService.java
|
||||
M hl-insurance-service/src/main/java/com/hulalv/insurance/vo/PolicyShareVO.java
|
||||
M hl-product-service/src/main/java/com/hulalv/product/config/Knife4jConfig.java
|
||||
M hl-product-service/src/main/java/com/hulalv/product/controller/ProductController.java
|
||||
A hl-product-service/src/main/java/com/hulalv/product/dto/ProductSaveRequest.java
|
||||
M hl-product-service/src/main/java/com/hulalv/product/service/ProductService.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/activity/constant/ActivityConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/activity/dto/PriceCalendarSetRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/activity/dto/PriceCalendarStatusRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/activity/entity/ActivityPriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/activity/vo/PriceCalendarDayVO.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/cost/constant/CostConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/cost/entity/CostPriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/cost/vo/PriceCalendarDayVO.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/constant/HotelConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/dto/PriceCalendarSetRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/dto/PriceCalendarStatusRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/entity/RoomPriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/vo/PriceCalendarDayVO.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/constant/ScenicConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/dto/PriceCalendarSetRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/dto/PriceCalendarStatusRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/entity/ScenicPriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/service/ScenicPriceCalendarService.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/vo/PriceCalendarDayVO.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/service/constant/ServiceConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/service/dto/PriceCalendarSetRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/service/dto/PriceCalendarStatusRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/service/entity/ServicePriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/service/vo/PriceCalendarDayVO.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/staff/constant/StaffConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/staff/dto/PriceCalendarSetRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/staff/dto/PriceCalendarStatusRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/staff/entity/StaffPriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/staff/vo/PriceCalendarDayVO.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/constant/VehicleConstants.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/dto/PriceCalendarSetRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/dto/PriceCalendarStatusRequest.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/entity/VehiclePriceCalendar.java
|
||||
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/vo/PriceCalendarDayVO.java
|
||||
A scripts/api-changelog-sync.py
|
||||
A scripts/sync-api-docs.py
|
||||
```
|
||||
</details>
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户