# 接口变更记录 — 2026-03-18 16:45

> **提交** `854939c` · **作者** wx · **时间** 2026-03-18 16:45:52 +0800
>
> feat: 产品服务全量添加@OperationLog操作日志 + 小蒙马算价增强 + EnableFeignClients扩展

## 变更总览

- **产品服务**
  - InternalProduct (改1)
  - Quote (改1)

---

## 产品服务

### InternalProduct

> 📖 **接口文档**: [http://192.168.100.236:8085/doc.html](http://192.168.100.236:8085/doc.html) → 标签 **「【内部接口】产品（Feign调用）」**

### ✏️ `GET` /internal/product/{productId}/group-quote — GROUP产品报价（内部）


**响应变更** `GroupQuoteResultVO`:

  - 🆕 `adultsPerRoom` (`Integer`) — 每间房入住成人数
  - 🆕 `roomCount` (`Integer`) — 选择的房间数
  - 🆕 `adultCount` (`Integer`) — 成人数
  - 🆕 `childCount` (`Integer`) — 儿童数
  - 🆕 `emptyBedSupplement` (`BigDecimal`) — 空床补差 = (房间数×每房成人数 - 成人数) × 单房差
  - 🆕 `totalSellPrice` (`BigDecimal`) — 总售价 = 成人价×成人数 + 儿童价×儿童数 + 空床补差
  - ✏️ `singleRoomSupplement`: 说明 "单房差(酒店总成本/2)" → "单房差 = 成人售价 - 儿童售价"
- 参数: productId(Long), batchId(Long), adultCount(Integer) → productId(Long), batchId(Long), adultCount(Integer), childCount(Integer), roomCount(Integer)

### Quote

> 📖 **接口文档**: [http://192.168.100.236:8085/doc.html](http://192.168.100.236:8085/doc.html) → 标签 **「报价计算」**

### ✏️ `GET` /admin/product/item/{productId}/group-quote — GROUP产品报价（按套餐组合）


**响应变更** `GroupQuoteResultVO`:

  - 🆕 `adultsPerRoom` (`Integer`) — 每间房入住成人数
  - 🆕 `roomCount` (`Integer`) — 选择的房间数
  - 🆕 `adultCount` (`Integer`) — 成人数
  - 🆕 `childCount` (`Integer`) — 儿童数
  - 🆕 `emptyBedSupplement` (`BigDecimal`) — 空床补差 = (房间数×每房成人数 - 成人数) × 单房差
  - 🆕 `totalSellPrice` (`BigDecimal`) — 总售价 = 成人价×成人数 + 儿童价×儿童数 + 空床补差
  - ✏️ `singleRoomSupplement`: 说明 "单房差(酒店总成本/2)" → "单房差 = 成人售价 - 儿童售价"
- 参数: productId(Long), batchId(Long), adultCount(Integer) → productId(Long), batchId(Long), adultCount(Integer), childCount(Integer), roomCount(Integer)

---

## 📦 其他数据对象变更

> 以下变更未直接关联到本次接口变更，但可能影响现有接口的请求/响应

### 产品服务

#### ✏️ GroupBatchUpdateRequest

  - 🆕 `adultsPerRoom` (`Integer`) — 每间房入住成人数（默认2，用于计算单房差）

#### ✏️ GroupTourBatchVO

  - 🆕 `adultsPerRoom` (`Integer`) — 每间房入住成人数（用于计算单房差）

#### ✏️ QuoteResultVO

  - 🆕 `singleRoomSupplement` (`BigDecimal`) — 单房差（当日酒店成本÷每房成人数，GROUP产品专用）

### 用户服务

#### ✏️ CreateDictTypeRequest

  - ✏️ `category`: 说明 "字典分类" → "字典分类（如BASE=基础字典, BUSINESS=业务字典，也可自定义）"

<details>
<summary>📁 全部变更文件 (点击展开)</summary>

```
M	docs/CLAUDE_WORKFLOW/prod-server-ops/sql_export/00_init_all.sql
M	docs/CLAUDE_WORKFLOW/prod-server-ops/sql_export/hl_user_service.sql
M	hl-common/src/main/java/com/hulalv/common/aspect/OperationLogAspect.java
M	hl-common/src/main/java/com/hulalv/common/util/AmapStaticMapUtil.java
M	hl-insurance-service/src/main/java/com/hulalv/insurance/service/BaoyouApiClient.java
M	hl-mp-service/src/main/java/com/hulalv/mp/feign/MpProductFeignClient.java
M	hl-mp-service/src/main/java/com/hulalv/mp/feign/MpProductFeignFallbackFactory.java
M	hl-order-service/src/main/java/com/hulalv/order/service/OrderService.java
M	hl-order-service/src/test/java/com/hulalv/order/service/OrderServiceTest.java
M	hl-product-service/src/main/java/com/hulalv/product/ProductServiceApplication.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/FamilyController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/FormulaController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/GroupBatchController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/InternalProductController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/ItineraryController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/PricingController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/ProductController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/ProductFolderController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/ProductLineController.java
M	hl-product-service/src/main/java/com/hulalv/product/controller/QuoteController.java
M	hl-product-service/src/main/java/com/hulalv/product/dto/GroupBatchCreateRequest.java
M	hl-product-service/src/main/java/com/hulalv/product/dto/GroupBatchUpdateRequest.java
M	hl-product-service/src/main/java/com/hulalv/product/entity/GroupTourBatch.java
M	hl-product-service/src/main/java/com/hulalv/product/service/CostCalculationService.java
M	hl-product-service/src/main/java/com/hulalv/product/service/GroupTourBatchService.java
M	hl-product-service/src/main/java/com/hulalv/product/service/PriceCalendarService.java
M	hl-product-service/src/main/java/com/hulalv/product/vo/GroupQuoteResultVO.java
M	hl-product-service/src/main/java/com/hulalv/product/vo/GroupTourBatchVO.java
M	hl-product-service/src/main/java/com/hulalv/product/vo/QuoteResultVO.java
M	hl-product-service/src/main/resources/bootstrap.yml
M	hl-resource-service/src/main/java/com/hulalv/resource/scenic/service/ScenicSpotService.java
M	hl-user-service/src/main/java/com/hulalv/user/dto/CreateDictTypeRequest.java
M	hl-user-service/src/main/java/com/hulalv/user/service/AdminAuthService.java
M	hl-user-service/src/test/java/com/hulalv/user/service/AdminAuthServiceTest.java
M	sql/pricing_formula_seed.sql
M	sql/schema_v2_admin_system.sql
```
</details>