changelog: 6a9ec7ce - feat(product-v2): 实现10个internal接口 + order-v2 Feign改指v2
这个提交包含在:
父节点
6d65caff03
当前提交
ae21373657
@ -0,0 +1,145 @@
|
||||
# 接口变更记录 — 2026-04-14 11:00
|
||||
|
||||
> **提交** `6a9ec7ce` · **作者** wx · **时间** 2026-04-14 11:00:15 +0800
|
||||
>
|
||||
> feat(product-v2): 实现10个internal接口 + order-v2 Feign改指v2
|
||||
|
||||
## 变更总览
|
||||
|
||||
- **hl-product-service-v2**
|
||||
- 🆕 InternalProduct (+10 接口)
|
||||
|
||||
---
|
||||
|
||||
## hl-product-service-v2
|
||||
|
||||
### 🆕 新增: InternalProduct
|
||||
|
||||
### 📌 `GET` /internal/product/{productId}/detail — 产品详情(内部)
|
||||
|
||||
> 不过滤状态,供订单创建时获取产品快照
|
||||
|
||||
**参数**
|
||||
|
||||
- `{productId}` (`Long`) — 路径参数:产品ID
|
||||
|
||||
**响应** `Result<Map<String, Object>>`
|
||||
|
||||
### 📌 `GET` /internal/product/{productId}/automation-config — 保险/合同配置
|
||||
|
||||
> 返回保险方案ID、合同方案ID、预订条款ID、温馨提示ID
|
||||
|
||||
**参数**
|
||||
|
||||
- `{productId}` (`Long`) — 路径参数:产品ID
|
||||
|
||||
**响应** `Result<Map<String, Object>>`
|
||||
|
||||
### 📌 `GET` /internal/product/{productId}/simple-quote — 简单报价
|
||||
|
||||
> 根据日期和人数计算各人群单价和总价
|
||||
|
||||
**参数**
|
||||
|
||||
- `{productId}` (`Long`) — 路径参数:产品ID
|
||||
- `adultCount` (`int`) — 查询参数
|
||||
- `childCount` (`int`) — 查询参数
|
||||
- `youngChildCount` (`int`) — 查询参数:小童数
|
||||
- `babyCount` (`int`) — 查询参数:幼童数
|
||||
- `childNeedBed` (`boolean`) — 查询参数:儿童是否需要加床
|
||||
|
||||
**响应** `Result<Map<String, Object>>`
|
||||
|
||||
### 📌 `POST` /internal/product/{productId}/deduct-stock — 扣库存
|
||||
|
||||
> 乐观锁扣减,库存不足返回错误
|
||||
|
||||
**参数**
|
||||
|
||||
- `{productId}` (`Long`) — 路径参数:产品ID
|
||||
- `count` (`int`) — 查询参数
|
||||
|
||||
**响应** `Result<Void>`
|
||||
|
||||
### 📌 `POST` /internal/product/{productId}/restore-stock — 恢复库存
|
||||
|
||||
> 取消/退款时恢复已扣库存
|
||||
|
||||
**参数**
|
||||
|
||||
- `{productId}` (`Long`) — 路径参数:产品ID
|
||||
- `count` (`int`) — 查询参数
|
||||
|
||||
**响应** `Result<Void>`
|
||||
|
||||
### 📌 `POST` /internal/product/batch/{batchId}/enroll — 报名入团
|
||||
|
||||
> 乐观锁扣减人数+房间名额,名额不足返回错误
|
||||
|
||||
**参数**
|
||||
|
||||
- `{batchId}` (`Long`) — 路径参数:班期ID
|
||||
- `peopleCount` (`int`) — 查询参数
|
||||
- `roomCount` (`int`) — 查询参数
|
||||
|
||||
**响应** `Result<Void>`
|
||||
|
||||
### 📌 `POST` /internal/product/batch/{batchId}/unenroll — 取消报名
|
||||
|
||||
> 取消/退款时回退人数和房间名额
|
||||
|
||||
**参数**
|
||||
|
||||
- `{batchId}` (`Long`) — 路径参数:班期ID
|
||||
- `peopleCount` (`int`) — 查询参数
|
||||
- `roomCount` (`int`) — 查询参数
|
||||
|
||||
**响应** `Result<Void>`
|
||||
|
||||
### 📌 `GET` /internal/product/batch/{batchId}/info — 团期信息
|
||||
|
||||
> 获取班期详细信息
|
||||
|
||||
**参数**
|
||||
|
||||
- `{batchId}` (`Long`) — 路径参数:班期ID
|
||||
|
||||
**响应** `Result<Map<String, Object>>`
|
||||
|
||||
### 📌 `GET` /internal/product/batch/{batchId}/quote — 团期报价
|
||||
|
||||
> 根据人数和房间数计算团期报价
|
||||
|
||||
**参数**
|
||||
|
||||
- `{batchId}` (`Long`) — 路径参数:班期ID
|
||||
- `adultCount` (`int`) — 查询参数
|
||||
- `childCount` (`int`) — 查询参数
|
||||
- `roomCount` (`int`) — 查询参数
|
||||
|
||||
**响应** `Result<Map<String, Object>>`
|
||||
|
||||
### 📌 `POST` /internal/product/{productId}/custom-status — 定制产品状态变更
|
||||
|
||||
> 内部触发产品状态变更(通过COLA状态机)
|
||||
|
||||
**参数**
|
||||
|
||||
- `{productId}` (`Long`) — 路径参数:产品ID
|
||||
- `status` (`String`) — 查询参数
|
||||
|
||||
**响应** `Result<Void>`
|
||||
|
||||
---
|
||||
|
||||
<details>
|
||||
<summary>📁 全部变更文件 (点击展开)</summary>
|
||||
|
||||
```
|
||||
M hl-order-service-v2/src/main/java/com/hulalv/shared/feign/ProductFeignClient.java
|
||||
A hl-product-service-v2/src/main/java/com/hulalv/controller/internal/InternalProductController.java
|
||||
M hl-product-service-v2/src/main/java/com/hulalv/mapper/GroupTourBatchMapper.java
|
||||
M hl-product-service-v2/src/main/java/com/hulalv/mapper/ProductPriceCalendarMapper.java
|
||||
A hl-product-service-v2/src/main/java/com/hulalv/service/internal/InternalProductService.java
|
||||
```
|
||||
</details>
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户