hl-api-changelog/changelogs/2026-03/2026-03-22_2115_e6589b1_security_API.md

745 行
40 KiB
Markdown

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# 接口变更记录 — 2026-03-22 21:15
> **提交** `e6589b1` · **作者** wx · **时间** 2026-03-22 21:15:06 +0800
>
> security: 全项目API安全校验加固16个微服务,258个文件
## 变更总览
- **产品服务**
- Pricing (+1)
- **保险服务**
- AdminInsurance (+1)
- InternalInsurance (+1)
- **合同服务**
- AdminContract (改1)
- InternalContract (+1)
- **文件服务**
- MpFile (+1, 改1)
- **订单服务**
- AdminAlbum (+1)
- AdminEarlyBird (+1, 改1)
- AdminInvoice (+1)
- AdminOrderConfig (+1)
- AdminOrder (+1, 改1)
- AdminOrderItinerary (+1)
- AdminOrderTodo (+1)
- AdminRefund (+1, 改1)
- AdminRefundPolicy (+1)
- AdminWorkOrder (+1, 改1)
- InternalAlbum (+1)
- InternalAutoProcess (+1)
- InternalDashboard (+1)
- InternalDesignerOrder (+1, 改1)
- InternalEarlyBird (+1)
- InternalInvoice (+1)
- InternalMpOrder (+1)
- InternalMpTrip (+1)
- InternalOrderStats (+1)
- InternalOrderTraveler (+1)
- InternalPaymentOrder (+1)
- MpOrder (+1)
- MpWeather (+1)
---
## 产品服务
### Pricing
> 📖 **接口文档**: [http://192.168.100.236:8085/doc.html](http://192.168.100.236:8085/doc.html) → 标签 **「定价与费用管理」**
### 🆕 `GET` /admin/product/item/{productId}/insurance-fee-preview — 预览保险方案费用
> 根据产品行程天数和选定的保险方案,计算人均保险费。
**参数**
- `{productId}` (`Long`) — 路径参数产品ID
- `schemeId` (`Long`) — 查询参数保险方案ID
**响应** `Result<Map<String, Object>>`
---
## 保险服务
### AdminInsurance
> 📖 **接口文档**: [http://192.168.100.236:8098/doc.html](http://192.168.100.236:8098/doc.html) → 标签 **「保险管理」**
### 🆕 `POST` /admin/insurance/purchase-by-scheme — 按方案自动投保(schemeId+orderId)
> 根据保险方案自动为订单所有出行人投保。系统自动从订单获取出行人信息和行程日期,按方案各段配置逐段投保。
**请求体** `AutoPurchaseRequest`
| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `orderId` | `Long` | 旅行订单ID |
| `schemeId` | `Long` | 保险方案ID |
**响应** `Result<AutoPurchaseResultVO>`
| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `success` | `boolean` | 是否全部成功 |
| `purchasedCount` | `int` | 成功投保段数 |
| `failedCount` | `int` | 失败段数 |
| `failureReason` | `String` | 失败原因(部分失败或全部失败时返回第一个错误) |
### InternalInsurance
> 📖 **接口文档**: [http://192.168.100.236:8098/doc.html](http://192.168.100.236:8098/doc.html) → 标签 **「【内部接口】保险Feign调用」**
### 🆕 `GET` /internal/insurance/scheme/{schemeId}/premium — 获取保险方案信息(内部调用)
> 内部服务间调用。返回方案的适用天数和人均保费,用于产品保存时校验天数匹配并自动填充保险费。
**参数**
- `{schemeId}` (`Long`) — 路径参数方案ID
- `tripDays` (`int`) — 查询参数:行程天数
**响应** `Result<Map<String, Object>>`
---
## 合同服务
### AdminContract
> 📖 **接口文档**: [http://192.168.100.236:8095/doc.html](http://192.168.100.236:8095/doc.html) → 标签 **「合同管理」**
### ✏️ `GET` /admin/contract/templates — 合同模板列表
- 参数: 无 → platform(String)
### InternalContract
> 📖 **接口文档**: [http://192.168.100.236:8095/doc.html](http://192.168.100.236:8095/doc.html) → 标签 **「【内部接口】合同Feign调用」**
### 🆕 `GET` /internal/contract/scheme/{schemeId}/config — 获取合同方案配置(内部调用)
> 供 order-service 自动签约时获取方案的完整合同配置
**参数**
- `{schemeId}` (`Long`) — 路径参数
**响应** `Result<Map<String, Object>>`
---
## 文件服务
### MpFile
> 📖 **接口文档**: [http://192.168.100.236:8091/doc.html](http://192.168.100.236:8091/doc.html) → 标签 **「C端文件上传」**
### 🆕 `GET` /mp/file/mp/file
### ✏️ `GET` /mp/file/preview-by-url — 文件在线预览
- 参数: url(String) → 无
---
## 订单服务
### AdminAlbum
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「管理端相册接口」**
### 🆕 `GET` /admin/order/admin/order
### AdminEarlyBird
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「早鸟优惠计划管理」**
### 🆕 `GET` /admin/order/early-bird/admin/order/early-bird
### ✏️ `GET` /admin/order/early-bird/list — 早鸟优惠计划列表
- 参数: page(int), pageSize(int) → page(int)
### AdminInvoice
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.3 发票管理」** → 标签 **「发票管理」**
### 🆕 `GET` /admin/invoice/admin/invoice
### AdminOrderConfig
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「订单配置接口」**
### 🆕 `GET` /admin/order/config/admin/order/config
### AdminOrder
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「管理端订单接口」**
### 🆕 `GET` /admin/order/admin/order
### ✏️ `GET` /admin/order/{orderId}/available-hotels — 配房可选酒店列表
- 参数: orderId(Long), dayIndex(Integer) → orderId(Long)
### AdminOrderItinerary
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「管理端订单行程编辑」**
### 🆕 `GET` /admin/order/{orderId}/itinerary/admin/order/{orderId}/itinerary
### AdminOrderTodo
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「订单待办接口」**
### 🆕 `GET` /admin/order/admin/order
### AdminRefund
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「退款管理」**
### 🆕 `GET` /admin/order/refund/admin/order/refund
### ✏️ `GET` /admin/order/refund/list — 退款申请列表
- 参数: status(String), page(int), pageSize(int) → status(String), page(int)
### AdminRefundPolicy
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「退款政策管理」**
### 🆕 `GET` /admin/order/refund-policy/admin/order/refund-policy
### AdminWorkOrder
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 分组 **「3.1 订单管理」** → 标签 **「工单管理」**
### 🆕 `GET` /admin/order/work-order/admin/order/work-order
### ✏️ `GET` /admin/order/work-order/list — 工单列表
- 参数: status(String), type(String), priority(String), orderNo(String), assigneeAdminId(Long), page(int), pageSize(int) → status(String), type(String), priority(String), orderNo(String), assigneeAdminId(Long), page(int)
### InternalAlbum
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】小程序相册Feign调用」**
### 🆕 `GET` /internal/mp/album/internal/mp/album
### InternalAutoProcess
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】自动化处理(运维用)」**
### 🆕 `GET` /internal/order/internal/order
### InternalDashboard
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】工作台统计Feign调用」**
### 🆕 `GET` /internal/order/dashboard/internal/order/dashboard
### InternalDesignerOrder
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】定制师订单Feign调用」**
### 🆕 `GET` /internal/order/internal/order
### ✏️ `GET` /internal/order/designer-list — 定制师订单列表
**响应变更** `OrderListVO`:
- 🆕 `surchargeAmount` (`BigDecimal`) — 费用增加总额
- 参数: customizerId(Long), page(int), pageSize(int), status(String), keyword(String) → customizerId(Long), page(int), status(String), keyword(String)
### InternalEarlyBird
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】早鸟优惠Feign调用」**
### 🆕 `GET` /internal/mp/early-bird/internal/mp/early-bird
### InternalInvoice
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】小程序发票Feign调用」**
### 🆕 `GET` /internal/mp/invoice/internal/mp/invoice
### InternalMpOrder
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】小程序订单Feign调用」**
### 🆕 `GET` /internal/mp/order/internal/mp/order
### InternalMpTrip
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】小程序行程Feign调用」**
### 🆕 `GET` /internal/mp/trip/internal/mp/trip
### InternalOrderStats
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「内部-订单统计」**
### 🆕 `GET` /internal/mp/order/internal/mp/order
### InternalOrderTraveler
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】订单出行人Feign调用」**
### 🆕 `GET` /internal/order/traveler/internal/order/traveler
### InternalPaymentOrder
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「【内部接口】订单-支付/合同/保险Feign调用」**
### 🆕 `GET` /internal/order/internal/order
### MpOrder
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「C端订单接口」**
### 🆕 `GET` /mp/order/mp/order
### MpWeather
> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「内部天气接口(Feign)」**
### 🆕 `GET` /internal/mp/weather/internal/mp/weather
---
## 📦 其他数据对象变更
> 以下变更未直接关联到本次接口变更,但可能影响现有接口的请求/响应
### 产品服务
#### ✏️ PricingRequest
-~~`adultExtraBed`~~ (`BigDecimal`) — 成人加床费
-~~`childNoBed`~~ (`BigDecimal`) — 儿童不占床价(暂未使用,预留字段)
-~~`singleRoomDiff`~~ (`BigDecimal`) — 单房差
-~~`companionPrice`~~ (`BigDecimal`) — 陪同人员价格
-~~`maxGroupSize`~~ (`Integer`) — 最大成团人数CORE/GROUP产品用
- ✏️ `minGroupSize`: 说明 "最小成团人数CORE/GROUP产品用,影响均摊成本计算" → "成团人数(影响均摊成本计算)"
#### ✏️ ProductAutomationConfigVO
- 🆕 `contractSchemeId` (`Long`)
-~~`contractPlatform`~~ (`String`)
-~~`contractTemplateCode`~~ (`String`)
-~~`contractMode`~~ (`String`)
-~~`signatoryMode`~~ (`Integer`)
-~~`agencyCode`~~ (`String`)
-~~`disputeResolution`~~ (`Integer`)
-~~`supplementaryClause`~~ (`String`)
-~~`transactorName`~~ (`String`)
-~~`transactorPhone`~~ (`String`)
#### ✏️ ProductCreateRequest
- 🆕 `contractSchemeId` (`Long`) — 合同方案ID
-~~`refundPolicyId`~~ (`String`) — 退款政策ID已废弃,用refundPolicyIds替代
-~~`contractPlatform`~~ (`String`) — 合同平台(12301/FADADA)
-~~`contractTemplateCode`~~ (`String`) — 合同模板编码
-~~`contractMode`~~ (`String`) — 签约模式(STANDARD/SYNC)
-~~`signatoryMode`~~ (`Integer`) — 签署模式(1=短信/2=现场/3=线下)
-~~`agencyCode`~~ (`String`) — 旅行社编码
-~~`disputeResolution`~~ (`Integer`) — 争议解决方式(1=仲裁/2=诉讼)
-~~`supplementaryClause`~~ (`String`) — 补充条款
-~~`transactorName`~~ (`String`) — 经办人姓名
-~~`transactorPhone`~~ (`String`) — 经办人电话
#### ✏️ ProductListVO
- 🆕 `contractSchemeId` (`String`) — 合同方案ID
-~~`contractPlatform`~~ (`String`) — 合同平台(12301/FADADA)
-~~`contractTemplateCode`~~ (`String`) — 合同模板编码
-~~`contractMode`~~ (`String`) — 签约模式(STANDARD/SYNC)
-~~`signatoryMode`~~ (`Integer`) — 签署模式(1=短信/2=现场/3=线下)
-~~`agencyCode`~~ (`String`) — 旅行社编码
-~~`disputeResolution`~~ (`Integer`) — 争议解决方式(1=仲裁/2=诉讼)
-~~`supplementaryClause`~~ (`String`) — 补充条款
-~~`transactorName`~~ (`String`) — 经办人姓名
-~~`transactorPhone`~~ (`String`) — 经办人电话
#### ✏️ ProductPricingVO
-~~`adultExtraBed`~~ (`BigDecimal`) — 成人加床费
-~~`childNoBed`~~ (`BigDecimal`) — 儿童不占床价
-~~`singleRoomDiff`~~ (`BigDecimal`) — 单房差
-~~`companionPrice`~~ (`BigDecimal`) — 陪同人员价格
-~~`maxGroupSize`~~ (`Integer`) — 最大成团人数
- ✏️ `minGroupSize`: 说明 "最小成团人数" → "成团人数"
#### ✏️ ProductSaveRequest
- 🆕 `contractSchemeId` (`Long`) — 合同方案ID
-~~`refundPolicyId`~~ (`String`) — 退款政策ID已废弃,用refundPolicyIds替代
-~~`contractPlatform`~~ (`String`) — 合同平台(12301/FADADA)
-~~`contractTemplateCode`~~ (`String`) — 合同模板编码
-~~`contractMode`~~ (`String`) — 签约模式(STANDARD/SYNC)
-~~`signatoryMode`~~ (`Integer`) — 签署模式(1=短信/2=现场/3=线下)
-~~`agencyCode`~~ (`String`) — 旅行社编码
-~~`disputeResolution`~~ (`Integer`) — 争议解决方式(1=仲裁/2=诉讼)
-~~`supplementaryClause`~~ (`String`) — 补充条款
-~~`transactorName`~~ (`String`) — 经办人姓名
-~~`transactorPhone`~~ (`String`) — 经办人电话
#### ✏️ ProductUpdateRequest
- 🆕 `contractSchemeId` (`Long`) — 合同方案ID
-~~`refundPolicyId`~~ (`String`) — 退款政策ID已废弃,用refundPolicyIds替代
-~~`contractPlatform`~~ (`String`) — 合同平台(12301/FADADA)
-~~`contractTemplateCode`~~ (`String`) — 合同模板编码
-~~`contractMode`~~ (`String`) — 签约模式(STANDARD/SYNC)
-~~`signatoryMode`~~ (`Integer`) — 签署模式(1=短信/2=现场/3=线下)
-~~`agencyCode`~~ (`String`) — 旅行社编码
-~~`disputeResolution`~~ (`Integer`) — 争议解决方式(1=仲裁/2=诉讼)
-~~`supplementaryClause`~~ (`String`) — 补充条款
-~~`transactorName`~~ (`String`) — 经办人姓名
-~~`transactorPhone`~~ (`String`) — 经办人电话
#### ✏️ ProductVO
- 🆕 `contractSchemeId` (`String`) — 合同方案ID
-~~`refundPolicyId`~~ (`String`) — 退款政策ID已废弃,用refundPolicyIds替代
-~~`refundPolicyName`~~ (`String`) — 退款政策名称(已废弃)
-~~`contractPlatform`~~ (`String`) — 合同平台(12301/FADADA)
-~~`contractTemplateCode`~~ (`String`) — 合同模板编码
-~~`contractMode`~~ (`String`) — 签约模式(STANDARD/SYNC)
-~~`signatoryMode`~~ (`Integer`) — 签署模式(1=短信/2=现场/3=线下)
-~~`agencyCode`~~ (`String`) — 旅行社编码
-~~`disputeResolution`~~ (`Integer`) — 争议解决方式(1=仲裁/2=诉讼)
-~~`supplementaryClause`~~ (`String`) — 补充条款
-~~`transactorName`~~ (`String`) — 经办人姓名
-~~`transactorPhone`~~ (`String`) — 经办人电话
### 保险服务
#### ✏️ InsuranceSchemeVO
- 🆕 `totalDays` (`Integer`) — 适用行程天数
### 公共模块
#### ✏️ OrderPayInfoDTO
- 🆕 `surchargeAmount` (`BigDecimal`) — 费用增加总额
### 合同服务
#### ✏️ ContractCallbackPayload
- 🆕 `timestamp` (`Long`) — 时间戳Unix秒
### 小程序聚合服务
#### ✏️ MpCustomProductDetailVO
-~~`adultExtraBed`~~ (`BigDecimal`) — 成人加床费
-~~`childNoBed`~~ (`BigDecimal`) — 儿童不占床价
-~~`singleRoomDiff`~~ (`BigDecimal`) — 单房差
-~~`companionPrice`~~ (`BigDecimal`) — 陪同人员价格
-~~`maxGroupSize`~~ (`Integer`) — 最大成团人数
- ✏️ `minGroupSize`: 说明 "最小成团人数" → "成团人数"
#### ✏️ MpOrderDetailVO
- 🆕 `surchargeAmount` (`BigDecimal`) — 费用增加总额
- 🆕 `surcharges` (`List<Map<String, Object>>`) — 费用增加项列表
- 🆕 `displayStatus` (`String`) — 展示状态(前端主要使用此字段展示)
- 🆕 `displayStatusLabel` (`String`) — 展示状态标签
- 🆕 `transportSegments` (`List<Map<String, Object>>`) — 交通段列表
- 🆕 `sharerOpenid` (`String`) — 分享者openid
### 订单服务
#### ✏️ OrderDetailVO
- 🆕 `surchargeAmount` (`BigDecimal`) — 费用增加总额
- 🆕 `surcharges` (`List<OrderSurcharge>`) — 费用增加项列表
#### ✏️ RefundPolicyRequest
-~~`refundType`~~ (`String`) — 退款类型字典refund_typeDEPOSIT(定金)/BALANCE(尾款)/FULL(全款)
-~~`isDefault`~~ (`Boolean`) — 是否为默认政策(产品未绑定退款政策时使用默认政策)
#### ✏️ RefundPolicyVO
-~~`refundType`~~ (`String`) — 退款类型字典refund_typeDEPOSIT(定金)/BALANCE(尾款)/FULL(全款)
-~~`isDefault`~~ (`Boolean`) — 是否为默认政策
### 评价服务
#### ✏️ CreateReviewRequest
- ✏️ `content`: 说明 "评价内容(10-500字)" → "评价内容(10-5000字)"
<details>
<summary>📁 全部变更文件 (点击展开)</summary>
```
M hl-common/src/main/java/com/hulalv/common/dto/OrderPayInfoDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/PaymentRefundRequest.java
M hl-common/src/main/java/com/hulalv/common/exception/GlobalExceptionHandler.java
M hl-contract-service/src/main/java/com/hulalv/contract/constant/ContractConstants.java
M hl-contract-service/src/main/java/com/hulalv/contract/controller/AdminContractController.java
M hl-contract-service/src/main/java/com/hulalv/contract/controller/ContractCallbackController.java
M hl-contract-service/src/main/java/com/hulalv/contract/controller/InternalContractController.java
M hl-contract-service/src/main/java/com/hulalv/contract/dto/ContractCallbackPayload.java
M hl-contract-service/src/main/java/com/hulalv/contract/dto/CreateContractRequest.java
M hl-contract-service/src/main/java/com/hulalv/contract/dto/ReportContractRequest.java
M hl-contract-service/src/main/java/com/hulalv/contract/service/ContractCallbackService.java
M hl-contract-service/src/test/java/com/hulalv/contract/service/ContractCallbackServiceTest.java
M hl-contract-service/src/test/java/com/hulalv/contract/service/ContractServiceTest.java
M hl-file-service/src/main/java/com/hulalv/file/controller/MpFileController.java
M hl-file-service/src/main/java/com/hulalv/file/service/FileService.java
M hl-gateway/src/main/java/com/hulalv/gateway/filter/JwtAuthFilter.java
M hl-gateway/src/main/java/com/hulalv/gateway/filter/RateLimitFilter.java
M hl-guide-service/src/main/java/com/hulalv/guide/dto/ArticleCreateRequest.java
M hl-guide-service/src/main/java/com/hulalv/guide/dto/ArticleUpdateRequest.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/controller/AdminInsuranceController.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/controller/InternalInsuranceController.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/dto/PurchaseInsuranceRequest.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/dto/RechargeRequest.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/dto/TrialPriceRequest.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/entity/InsuranceScheme.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/service/InsuranceOrderService.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/service/InsuranceSchemeService.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/vo/InsuranceSchemeVO.java
M hl-material-service/src/main/java/com/hulalv/material/dto/MaterialUploadConfirmRequest.java
M hl-material-service/src/main/java/com/hulalv/material/service/MaterialService.java
M hl-material-service/src/main/java/com/hulalv/material/service/MaterialTagService.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpActivityController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpCommonController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpContractController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpCustomizeController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpDesignerController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpExploreController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpFavoriteController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpFootprintController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpHotelController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpInvoiceController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpMessageController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpOrderController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpPaymentController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpProductController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpRefundController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpRestaurantController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpReviewController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpScenicController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpTravelerController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpUserController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpWikiController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpWishController.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpCheckinRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpFeedbackRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpFootprintAddRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpInvoiceApplyRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpLoginBySmsRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpPaymentPrepayRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpProductQuoteRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpRefundAppealRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpRefundApplyRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpReviewCreateRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpSmsSendRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpTravelerRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpUpdateOrderRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpUserProfileUpdateRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpWechatLoginRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/dto/MpWishCreateRequest.java
M hl-mp-service/src/main/java/com/hulalv/mp/vo/MpCustomProductDetailVO.java
M hl-mp-service/src/main/java/com/hulalv/mp/vo/MpOrderDetailVO.java
M hl-order-service/src/main/java/com/hulalv/order/constant/OrderConstants.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminAlbumController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminEarlyBirdController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminInvoiceController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminOrderConfigController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminOrderController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminOrderItineraryController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminOrderTodoController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminRefundController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminRefundPolicyController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/AdminWorkOrderController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalAlbumController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalAutoProcessController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalDashboardController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalDesignerOrderController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalEarlyBirdController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalInvoiceController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalMpOrderController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalMpTripController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalOrderStatsController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalOrderTravelerController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalPaymentOrderController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/InternalRefundController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/MpOrderController.java
M hl-order-service/src/main/java/com/hulalv/order/controller/MpWeatherController.java
M hl-order-service/src/main/java/com/hulalv/order/dto/AdminCancelRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/AdminOrderQueryRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/AdminRefundReviewRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/AdminUpdateOrderRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/AlbumFileAddRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/CreateOrderRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/CreateWorkOrderRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/ExecuteAppealRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/InvoiceApplyRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/ItineraryAddNodeRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/ItinerarySkipRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/ItineraryUndoRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/ProcessWorkOrderRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/RecordBalanceRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/RefundAppealRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/RefundApplyRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/RefundPolicyRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/RequestUnlockRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/RoomTypeChangeRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/TransportSegmentRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/UpdateDepositRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/UpdateOrderStatusRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/VehicleAssignmentRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/VehicleTypeChangeRequest.java
M hl-order-service/src/main/java/com/hulalv/order/entity/OrderInfo.java
M hl-order-service/src/main/java/com/hulalv/order/entity/OrderTimeline.java
M hl-order-service/src/main/java/com/hulalv/order/entity/RefundPolicy.java
M hl-order-service/src/main/java/com/hulalv/order/feign/ContractFeignClient.java
M hl-order-service/src/main/java/com/hulalv/order/feign/ContractFeignFallbackFactory.java
M hl-order-service/src/main/java/com/hulalv/order/service/NotificationEventHelper.java
M hl-order-service/src/main/java/com/hulalv/order/service/OrderCacheService.java
M hl-order-service/src/main/java/com/hulalv/order/service/OrderService.java
M hl-order-service/src/main/java/com/hulalv/order/service/OrderTimelineService.java
M hl-order-service/src/main/java/com/hulalv/order/service/OrderTravelerService.java
M hl-order-service/src/main/java/com/hulalv/order/service/RefundApplicationService.java
M hl-order-service/src/main/java/com/hulalv/order/service/RefundApprovalPollingService.java
M hl-order-service/src/main/java/com/hulalv/order/service/RefundPolicyService.java
M hl-order-service/src/main/java/com/hulalv/order/vo/OrderDetailVO.java
M hl-order-service/src/main/java/com/hulalv/order/vo/OrderListVO.java
M hl-order-service/src/main/java/com/hulalv/order/vo/RefundPolicyVO.java
M hl-order-service/src/test/java/com/hulalv/order/service/OrderServiceTest.java
M hl-order-service/src/test/java/com/hulalv/order/service/RefundApplicationServiceTest.java
M hl-order-service/src/test/java/com/hulalv/order/service/RefundPolicyServiceTest.java
M hl-payment-service/src/main/java/com/hulalv/payment/controller/AdminPaymentController.java
M hl-payment-service/src/main/java/com/hulalv/payment/dto/RefundRequest.java
M hl-payment-service/src/main/java/com/hulalv/payment/service/PaymentService.java
M hl-payment-service/src/main/java/com/hulalv/payment/service/RefundService.java
M hl-payment-service/src/test/java/com/hulalv/payment/service/PaymentServiceTest.java
M hl-payment-service/src/test/java/com/hulalv/payment/service/RefundServiceTest.java
M hl-product-service/src/main/java/com/hulalv/product/controller/PricingController.java
M hl-product-service/src/main/java/com/hulalv/product/dto/BookingTermsRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/CustomFeeRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/FormulaStepRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/FormulaTestRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/NodeCreateRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/NodeUpdateRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/PriceCalendarRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/PricingRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/ProductCreateRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/ProductSaveRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/ProductStatusRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/ProductUpdateRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/WarmTipsRequest.java
M hl-product-service/src/main/java/com/hulalv/product/engine/FormulaEngineConfig.java
M hl-product-service/src/main/java/com/hulalv/product/entity/Product.java
M hl-product-service/src/main/java/com/hulalv/product/entity/ProductPricing.java
M hl-product-service/src/main/java/com/hulalv/product/service/FormulaStepService.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/ProductService.java
M hl-product-service/src/main/java/com/hulalv/product/service/ProductStatusService.java
M hl-product-service/src/main/java/com/hulalv/product/vo/ProductAutomationConfigVO.java
M hl-product-service/src/main/java/com/hulalv/product/vo/ProductListVO.java
M hl-product-service/src/main/java/com/hulalv/product/vo/ProductPricingVO.java
M hl-product-service/src/main/java/com/hulalv/product/vo/ProductVO.java
M hl-product-service/src/test/java/com/hulalv/product/service/CostCalculationServiceTest.java
M hl-product-service/src/test/java/com/hulalv/product/service/FormulaStepServiceTest.java
M hl-product-service/src/test/java/com/hulalv/product/service/GroupTourBatchServiceTest.java
M hl-product-service/src/test/java/com/hulalv/product/service/MpProductServiceTest.java
M hl-product-service/src/test/java/com/hulalv/product/service/ProductPricingServiceTest.java
M hl-product-service/src/test/java/com/hulalv/product/service/ProductServiceTest.java
M hl-product-service/src/test/java/com/hulalv/product/service/ProductStatusServiceTest.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/controller/ActivityController.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/dto/ActivityCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/dto/ActivityQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/dto/ActivityUpdateRequest.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/cost/dto/CostItemCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/cost/dto/CostItemQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/cost/dto/CostItemUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/controller/HotelController.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/dto/HotelCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/dto/HotelQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/dto/HotelUpdateRequest.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/RoomTypeCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/dto/RoomTypeUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/controller/RestaurantController.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/dto/RestaurantCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/dto/RestaurantQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/dto/RestaurantUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/controller/ScenicSpotController.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/ScenicSpotCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/dto/ScenicSpotQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/dto/ScenicSpotUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/service/controller/ServiceItemController.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/ServiceCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/service/dto/ServiceQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/service/dto/ServiceUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/staff/controller/StaffController.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/StaffBatchDeleteRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/staff/dto/StaffCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/staff/dto/StaffQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/staff/dto/StaffUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/supplies/controller/SuppliesController.java
M hl-resource-service/src/main/java/com/hulalv/resource/supplies/dto/SuppliesCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/supplies/dto/SuppliesQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/supplies/dto/SuppliesUpdateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/controller/VehicleModelController.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/VehicleBatchDeleteRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/dto/VehicleCreateRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/dto/VehicleQueryRequest.java
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/dto/VehicleUpdateRequest.java
M hl-review-service/src/main/java/com/hulalv/review/dto/CreateReviewRequest.java
M hl-review-service/src/main/java/com/hulalv/review/dto/RejectRequest.java
M hl-task-service/src/main/java/com/hulalv/task/dto/CreateBoardRequest.java
M hl-task-service/src/main/java/com/hulalv/task/dto/CreateCommentRequest.java
M hl-task-service/src/main/java/com/hulalv/task/dto/CreateTaskRequest.java
M hl-task-service/src/main/java/com/hulalv/task/dto/UpdateTaskRequest.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AuthController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/SysJobController.java
M hl-user-service/src/main/java/com/hulalv/user/dto/AdminLoginRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/AgreementRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/BannerRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/ContactRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/CreateAdminRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/CreateDictDataRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/CreateDictTypeRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/CreateJobRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/CreateMenuRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/CreateRoleRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/ExploreCategoryResourceRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/FaqItemRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/LoginRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/TopicRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/TravelerRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/TwoFaVerifyRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateAdminRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateDictDataRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateDictTypeRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateJobRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateMenuRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateProfileRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateRoleRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/WechatBindRequest.java
M hl-user-service/src/main/java/com/hulalv/user/interceptor/TokenInterceptor.java
M hl-user-service/src/main/java/com/hulalv/user/service/SysJobService.java
M hl-user-service/src/main/java/com/hulalv/user/service/UserMessageService.java
M hl-user-service/src/test/java/com/hulalv/user/service/SysJobServiceTest.java
```
</details>