hl-api-changelog/changelogs/2026-03/2026-03-16_522a737_feat_Knife4j.md

3219 行
137 KiB
Markdown

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

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

# 接口变更记录 - 2026-03-16
> **提交**: `522a737` | **作者**: wx | **时间**: 2026-03-16 16:50:04 +0800
>
> **说明**: feat: Knife4j网关文档修复 + AI Bridge增强 + bootstrap默认Nacos改本地
## ⚡ 接口变更速览
- **产品服务**
- ✏️ **InternalProduct** 修改14个接口
- ✏️ **MpProduct** 修改3个接口
- ✏️ **Product** 修改1个接口
- ✏️ **Quote** 修改1个接口
- **任务服务**
- ✏️ **Board** 修改8个接口
- ✏️ **Task** 修改9个接口
- **企微回调服务**
- ✏️ **WxCallback** 修改4个接口
- **保险服务**
- ✏️ **AdminInsurance** 修改3个接口
- **合同服务**
- ✏️ **AdminClauseTemplate** 修改4个接口
- ✏️ **AdminContract** 修改10个接口
- ✏️ **ContractCallback** 修改1个接口
- ✏️ **InternalContract** 修改4个接口
- ✏️ **InternalMpContract** 修改4个接口
- **小程序聚合服务**
- ✏️ **MpBadge** 修改1个接口
- ✏️ **MpContract** 修改4个接口
- ✏️ **MpDesigner** 修改2个接口
- ✏️ **MpDict** 修改1个接口
- ✏️ **MpExplore** 修改5个接口
- ✏️ **MpFavorite** 修改1个接口
- ✏️ **MpFootprint** 修改1个接口
- ✏️ **MpHome** 修改1个接口
- ✏️ **MpInsurance** 修改1个接口
- ✏️ **MpInvoice** 修改3个接口
- ✏️ **MpOrder** 修改5个接口
- ✏️ **MpPayment** 修改2个接口
- ✏️ **MpProduct** 修改4个接口
- ✏️ **MpRefund** 修改4个接口
- ✏️ **MpReview** 修改6个接口
- ✏️ **MpSearch** 修改1个接口
- ✏️ **MpTraveler** 修改3个接口
- ✏️ **MpTrip** 修改3个接口
- ✏️ **MpUser** 修改3个接口
- ✏️ **MpWeather** 修改3个接口
- ✏️ **MpWiki** 修改1个接口
- ✏️ **MpWish** 修改2个接口
- **支付服务**
- ✏️ **AdminPayment** 修改2个接口
- ✏️ **InternalPayment** 修改3个接口
- ✏️ **PaymentCallback** 修改1个接口
- **攻略服务**
- ✏️ **AdminGuideArticle** 修改5个接口
- ✏️ **AdminGuideCategory** 修改4个接口
- ✏️ **AdminGuideTag** 修改3个接口
- ✏️ **InternalWiki** 修改2个接口
- **文件服务**
- ✏️ **File** 修改8个接口
- ✏️ **InternalFile** 修改7个接口
- ✏️ **MpFile** 修改1个接口
- **用户服务**
- ✏️ **AdminAgreement** 修改1个接口
- ✏️ **AdminBanner** 修改1个接口
- ✏️ **AdminContact** 修改4个接口
- ✏️ **AdminCustomer** 修改4个接口
- ✏️ **AdminDesigner** 修改3个接口
- ✏️ **AdminExploreCategory** 修改1个接口
- ✏️ **AdminFrontendConfig** 修改1个接口
- ✏️ **AdminProfile** 修改4个接口
- ✏️ **AdminTopic** 修改1个接口
- ✏️ **AdminUser** 修改8个接口
- ✏️ **Auth** 修改13个接口
- ✏️ **Favorite** 修改3个接口
- ✏️ **Footprint** 修改3个接口
- ✏️ **InternalApproval** 修改3个接口
- ✏️ **InternalContact** 修改1个接口
- ✏️ **InternalExploreCategory** 修改1个接口
- ✏️ **InternalLike** 修改3个接口
- ✏️ **InternalLoginLog** 修改1个接口
- ✏️ **InternalMpDict** 修改2个接口
- ✏️ **InternalMpMessage** 修改4个接口
- ✏️ **InternalMpUser** 修改9个接口
- ✏️ **InternalUser** 修改8个接口
- ✏️ **InternalWechat** 修改5个接口
- ✏️ **InternalWish** 修改2个接口
- ✏️ **PublicDict** 修改1个接口
- ✏️ **SysDict** 修改12个接口
- ✏️ **SysJob** 修改7个接口
- ✏️ **SysMenu** 修改3个接口
- ✏️ **SysRole** 修改7个接口
- ✏️ **Traveler** 修改5个接口
- ✏️ **User** 修改8个接口
- ✏️ **WechatSync** 修改5个接口
- ✏️ **AdminNotification** 修改3个接口
- **监控服务**
- ✏️ **ApprovalLog** 修改2个接口
- ✏️ **DataRetention** 修改1个接口
- ✏️ **ErrorLog** 修改1个接口
- ✏️ **InternalLog** 修改5个接口
- ✏️ **LoginLog** 修改1个接口
- ✏️ **MysqlMonitor** 修改3个接口
- ✏️ **NotificationLog** 修改1个接口
- ✏️ **OperationLog** 修改1个接口
- ✏️ **RedisMonitor** 修改1个接口
- ✏️ **RocketMqMonitor** 修改3个接口
- ✏️ **ServiceMonitor** 修改1个接口
- **素材服务**
- ✏️ **InternalMaterial** 修改4个接口
- ✏️ **MaterialCategoryPermission** 修改2个接口
- ✏️ **Material** 修改13个接口
- ✏️ **MpMaterial** 修改1个接口
- **订单服务**
- ✏️ **AdminAlbum** 修改7个接口
- ✏️ **AdminEarlyBird** 修改6个接口
- ✏️ **AdminOrderConfig** 修改2个接口
- ✏️ **AdminOrder** 修改12个接口
- ✏️ **AdminOrderItinerary** 修改16个接口
- ✏️ **AdminOrderTodo** 修改7个接口
- ✏️ **AdminRefund** 修改6个接口
- ✏️ **AdminRefundPolicy** 修改3个接口
- ✏️ **AdminWorkOrder** 修改8个接口
- ✏️ **InternalAlbum** 修改3个接口
- ✏️ **InternalDashboard** 修改9个接口
- ✏️ **InternalDesignerOrder** 修改3个接口
- ✏️ **InternalEarlyBird** 修改2个接口
- ✏️ **InternalInvoice** 修改3个接口
- ✏️ **InternalMpOrder** 修改8个接口
- ✏️ **InternalMpTrip** 修改3个接口
- ✏️ **InternalOrderStats** 修改3个接口
- ✏️ **InternalOrderTraveler** 修改1个接口
- ✏️ **InternalPaymentOrder** 修改4个接口
- ✏️ **InternalRefund** 修改8个接口
- ✏️ **MpOrder** 修改2个接口
- ✏️ **MpWeather** 修改3个接口
- **评价服务**
- ✏️ **AdminReview** 修改5个接口
- ✏️ **InternalMpReview** 修改5个接口
- ✏️ **InternalReview** 修改6个接口
- **资源服务**
- ✏️ **Activity** 修改9个接口
- ✏️ **ActivityPriceCalendar** 修改4个接口
- ✏️ **ActivityTag** 修改8个接口
- ✏️ **InternalActivity** 修改3个接口
- ✏️ **InternalMpActivity** 修改2个接口
- ✏️ **InternalMpResourceBrief** 修改3个接口
- ✏️ **InternalResource** 修改1个接口
- ✏️ **InternalResourceDetail** 修改1个接口
- ✏️ **InternalResourceStats** 修改2个接口
- ✏️ **CostItem** 修改8个接口
- ✏️ **CostPriceCalendar** 修改3个接口
- ✏️ **InternalCost** 修改4个接口
- ✏️ **Hotel** 修改10个接口
- ✏️ **HotelTag** 修改8个接口
- ✏️ **InternalHotel** 修改3个接口
- ✏️ **InternalMpHotel** 修改2个接口
- ✏️ **RoomPriceCalendar** 修改4个接口
- ✏️ **RoomType** 修改7个接口
- ✏️ **InternalMpRestaurant** 修改2个接口
- ✏️ **InternalRestaurant** 修改3个接口
- ✏️ **Restaurant** 修改9个接口
- ✏️ **RestaurantTag** 修改8个接口
- ✏️ **InternalMpScenic** 修改3个接口
- ✏️ **InternalScenic** 修改7个接口
- ✏️ **ScenicPriceCalendar** 修改4个接口
- ✏️ **ScenicSeason** 修改3个接口
- ✏️ **ScenicSpot** 修改9个接口
- ✏️ **ScenicTag** 修改8个接口
- ✏️ **InternalService** 修改3个接口
- ✏️ **ServiceItem** 修改9个接口
- ✏️ **ServicePriceCalendar** 修改4个接口
- ✏️ **ServiceTag** 修改8个接口
- ✏️ **InternalStaff** 修改6个接口
- ✏️ **Staff** 修改9个接口
- ✏️ **StaffPriceCalendar** 修改4个接口
- ✏️ **StaffTag** 修改8个接口
- ✏️ **InternalSupplies** 修改3个接口
- ✏️ **Supplies** 修改9个接口
- ✏️ **SuppliesTag** 修改8个接口
- ✏️ **InternalVehicle** 修改5个接口
- ✏️ **VehicleModel** 修改10个接口
- ✏️ **VehiclePriceCalendar** 修改4个接口
- ✏️ **VehicleTag** 修改8个接口
---
## 产品服务
### ✏️ InternalProduct (修改)
**修改接口:**
- `POST /internal/product/approval-result` - 处理产品审批结果
- 名称: ~~~~ → **处理产品审批结果**
- 返回类型: `` → `Result<Void>`
- `GET /internal/product/{productId}/detail` - 获取产品详情(内部)
- 名称: ~~~~ → **获取产品详情(内部)**
- `POST /internal/product/{productId}/quote` - 报价计算(内部)
- 名称: ~~~~ → **报价计算(内部)**
- `GET /internal/product/{productId}/simple-quote` - 简单报价(内部)
- 名称: ~~~~ → **简单报价(内部)**
- `POST /internal/product/{productId}/deduct-stock` - 扣减库存(内部)
- 名称: ~~~~ → **扣减库存(内部)**
- `POST /internal/product/{productId}/restore-stock` - 恢复库存(内部)
- 名称: ~~~~ → **恢复库存(内部)**
- `GET /internal/product/{productId}/itinerary-resources` - 获取行程关联资源(内部)
- 名称: ~~~~ → **获取行程关联资源(内部)**
- `PUT /internal/product/{productId}/custom-status` - 变更定制产品状态(内部)
- 名称: ~~~~ → **变更定制产品状态(内部)**
- `POST /internal/product/batch/{batchId}/enroll` - 报名入团(内部)
- 名称: ~~~~ → **报名入团(内部)**
- `POST /internal/product/batch/{batchId}/unenroll` - 退出报名(内部)
- 名称: ~~~~ → **退出报名(内部)**
- `GET /internal/product/batch/{batchId}/info` - 批次信息(内部)
- 名称: ~~~~ → **批次信息(内部)**
- `GET /internal/product/{productId}/group-quote` - GROUP产品报价内部
- 名称: ~~~~ → **GROUP产品报价内部**
- `GET /internal/product/{productId}/batches/calendar` - 团期日历数据(内部)
- 名称: ~~~~ → **团期日历数据(内部)**
- `GET /internal/product/batch/{batchId}/combos` - 批次套餐列表(内部)
- 名称: ~~~~ → **批次套餐列表(内部)**
### ✏️ MpProduct (修改)
**修改接口:**
- `GET /mp/product/list` - 产品列表C端
- 名称: ~~产品列表~~**产品列表C端**
- `GET /mp/product/{productId}` - 产品详情C端
- 名称: ~~产品详情~~**产品详情C端**
- `POST /mp/product/{productId}/quote` - 报价计算C端
- 名称: ~~报价计算~~**报价计算C端**
### ✏️ Product (修改)
**修改接口:**
- `PUT /admin/product/item/{productId}/status` - 产品状态变更(上架/下架/完成)
- 名称: ~~产品状态变更(上架/下架等)~~**产品状态变更(上架/下架/完成)**
### ✏️ Quote (修改)
**修改接口:**
- `GET /admin/product/item/{productId}/group-quote` - GROUP产品报价按套餐组合
- 名称: ~~GROUP产品报价按组合~~**GROUP产品报价按套餐组合**
## 任务服务
### ✏️ Board (修改)
**修改接口:**
- `GET /admin/task/boards` - 获取可见看板列表
- `GET /admin/task/board/{boardId}` - 看板详情
- `DELETE /admin/task/board/{boardId}` - 删除看板
- `GET /admin/task/board/{boardId}/statuses` - 获取看板状态列
- `DELETE /admin/task/status/{statusId}` - 删除状态列
- `PUT /admin/task/board/{boardId}/status/sort` - 状态列排序
- `GET /admin/task/board/{boardId}/members` - 获取看板成员
- `DELETE /admin/task/board/{boardId}/member/{targetAdminId}` - 移除成员
### ✏️ Task (修改)
**修改接口:**
- `GET /admin/task/board/{boardId}/tasks` - 获取看板任务(按状态分组)
- `GET /admin/task/{taskId}` - 任务详情
- `POST /admin/task` - 创建任务
- `PUT /admin/task/{taskId}/status` - 变更任务状态
- `PUT /admin/task/{taskId}/sort` - 任务排序
- `PUT /admin/task/subtask/{subtaskId}/toggle` - 切换子任务完成状态
- `GET /admin/task/{taskId}/timeline` - 获取任务时间线
- `POST /admin/task/{taskId}/comment` - 添加评论
- `DELETE /admin/task/comment/{commentId}` - 删除评论
## 企微回调服务
### ✏️ WxCallback (修改)
**修改接口:**
- `GET /wx/callback/app` - 回调URL验证
- 名称: ~~Callback URL verification~~**回调URL验证**
- `POST /wx/callback/app` - 接收回调事件
- 名称: ~~Receive callback events~~**接收回调事件**
- `GET /wx/callback/contacts` - 联系人同步URL验证
- 名称: ~~Contact sync URL verification~~**联系人同步URL验证**
- `POST /wx/callback/contacts` - 接收联系人同步事件
- 名称: ~~Receive contact sync events~~**接收联系人同步事件**
## 保险服务
### ✏️ AdminInsurance (修改)
**修改接口:**
- `POST /admin/insurance/purchase` - 投保下单(每人独立保单)
- `GET /admin/insurance/orders` - 保险订单列表
- `GET /admin/insurance/orders/{id}` - 保险订单详情(含被保人)
## 合同服务
### ✏️ AdminClauseTemplate (修改)
**修改接口:**
- `GET /admin/contract/clause-template/list-all` - 获取全部补充约定模板(管理页用)
- `PUT /admin/contract/clause-template/{id}/toggle-status` - 切换模板启用/停用状态
- `POST /admin/contract/clause-template` - 创建补充约定模板
- `DELETE /admin/contract/clause-template/{id}` - 删除补充约定模板
### ✏️ AdminContract (修改)
**修改接口:**
- `GET /admin/contract/agencies` - 可用旅行社列表
- `GET /admin/contract/templates` - 合同模板列表
- `POST /admin/contract/create` - 创建合同(标准模式)
- `POST /admin/contract/report` - 报备合同(同步模式)
- `GET /admin/contract/list` - 合同列表
- `GET /admin/contract/{id}` - 合同详情
- `GET /admin/contract/{id}/status` - 刷新合同状态(从平台同步)
- `POST /admin/contract/{id}/invalidate` - 作废合同
- `POST /admin/contract/{id}/resend-sms` - 重发签署短信
- `POST /admin/contract/{id}/upload-pdf` - 上传已签署PDF(同步模式)
### ✏️ ContractCallback (修改)
**修改接口:**
- `POST /contract/callback/12301` - 12301合同状态回调
### ✏️ InternalContract (修改)
**修改接口:**
- `GET /internal/contract/by-order/{orderId}` - 按订单查询合同(内部调用)
- `POST /internal/contract/by-orders` - 按订单批量查询合同(内部调用)
- `GET /internal/contract/has-signed/{orderId}` - 检查订单是否有已签署合同(内部调用)
- `POST /internal/contract/invalidate/{orderId}` - 按订单作废所有有效合同(级联调用)
### ✏️ InternalMpContract (修改)
**修改接口:**
- `GET /internal/mp/contract/list` - 用户合同列表
- `GET /internal/mp/contract/{id}` - 用户合同详情
- `GET /internal/mp/contract/by-order/{orderId}` - 按订单查合同(返回最新有效合同)
- `GET /internal/mp/contract/by-order/{orderId}/all` - 按订单查所有有效合同TOUR+INSURANCE各一条
## 小程序聚合服务
### ✏️ MpBadge (修改)
**修改接口:**
- `GET /mp/badge` - 获取徽章数据
### ✏️ MpContract (修改)
**修改接口:**
- `GET /mp/contract/list` - 合同列表
- `GET /mp/contract/{id}` - 合同详情
- `GET /mp/contract/by-order/{orderId}` - 按订单查合同
- `GET /mp/contract/by-order/{orderId}/all` - 按订单查所有合同
### ✏️ MpDesigner (修改)
**修改接口:**
- `GET /mp/designer/{id}/products` - 定制师已发布产品列表
- `GET /mp/designer/{id}/reviews` - 定制师产品评价列表
### ✏️ MpDict (修改)
**修改接口:**
- `GET /dict/all` - 获取所有字典数据
### ✏️ MpExplore (修改)
**修改接口:**
- `GET /mp/explore/list` - 探索列表
- 返回类型: `` → `Result<Map<String, Object>>`
- `GET /mp/explore/{id}` - 探索详情
- 返回类型: `` → `Result<Map<String, Object>>`
- `POST /mp/explore/{id}/view` - 浏览+1
- 返回类型: `` → `Result<Void>`
- `POST /mp/explore/{id}/like` - 切换点赞
- 返回类型: `` → `Result<Boolean>`
- `POST /mp/explore/{id}/favorite` - 切换收藏
- 返回类型: `` → `Result<Boolean>`
### ✏️ MpFavorite (修改)
**修改接口:**
- `POST /mp/user/favorite` - 添加收藏
### ✏️ MpFootprint (修改)
**修改接口:**
- `POST /mp/user/footprint` - 记录足迹
### ✏️ MpHome (修改)
**修改接口:**
- `GET /mp/home` - 首页数据
### ✏️ MpInsurance (修改)
**修改接口:**
- `GET /mp/insurance/policy-pdf/{orderId}` - 获取订单所有保单PDF
### ✏️ MpInvoice (修改)
**修改接口:**
- `GET /mp/invoice/{id}` - 发票详情
- `GET /mp/invoice/order/{orderId}` - 通过订单ID查询发票
- `POST /mp/invoice/{invoiceId}/reissue` - 发票换开
### ✏️ MpOrder (修改)
**修改接口:**
- `GET /mp/order/list` - 订单列表
- `GET /mp/order/{orderId}` - 订单详情
- `GET /mp/order/lookup` - 通过联系人手机号+姓名查找订单(无需登录)
- 返回类型: `` → `Result<List<Map<String, Object>>>`
- `POST /mp/order/{orderId}/approve-unlock` - 同意解锁订单
- `GET /mp/order/count` - 各状态订单数量
### ✏️ MpPayment (修改)
**修改接口:**
- `GET /mp/payment/status/{orderId}` - 发起支付
- `GET /mp/payment/transactions/{orderId}` - 查询支付状态
- 返回类型: `Result<Object>` → ``
### ✏️ MpProduct (修改)
**修改接口:**
- `GET /mp/product/list` - 产品列表
- `GET /mp/product/{productId}` - 产品详情(聚合收藏状态)
- `GET /mp/product/lines` - 产品线列表
- `GET /mp/product/{productId}/price-calendar` - 价格日历
### ✏️ MpRefund (修改)
**修改接口:**
- `GET /mp/order/refund-reasons` - 退款原因列表
- `GET /mp/order/refund/{applicationId}` - 退款申请详情
- `GET /mp/order/{orderId}/refund-detail` - 根据订单ID获取最新退款详情
- `POST /mp/order/refund/{applicationId}/cancel` - 撤回退款申请
### ✏️ MpReview (修改)
**修改接口:**
- `POST /mp/review/create` - 创建评价
- `GET /mp/review/my` - 我的评价列表
- `GET /mp/review/search` - 关键词搜索评价(公开)
- `GET /mp/review/target` - 某目标的已通过评价(公开)
- `GET /mp/review/product/{productId}` - 按产品ID查看评价列表
- `GET /mp/review/featured` - 精选评价列表(公开)
### ✏️ MpSearch (修改)
**修改接口:**
- `GET /mp/search` - 搜索产品
### ✏️ MpTraveler (修改)
**修改接口:**
- `POST /mp/user/traveler` - 添加出行人
- `GET /mp/user/traveler` - 出行人列表
- `PUT /mp/user/traveler/{id}/default` - 设为默认出行人
### ✏️ MpTrip (修改)
**修改接口:**
- `GET /mp/trip/list` - 行程列表
- `GET /mp/trip/{orderId}` - 行程详情
- `GET /mp/trip/today` - 今日行程
### ✏️ MpUser (修改)
**修改接口:**
- `POST /mp/user/sms/send` - 发送短信验证码
- `GET /mp/user/profile` - 获取用户信息
- `PUT /mp/user/profile` - 更新用户信息
### ✏️ MpWeather (修改)
**修改接口:**
- `GET /mp/weather/itinerary/{orderId}` - 获取订单行程天气
- `GET /mp/weather/live` - 获取指定城市实况天气
- `GET /mp/weather/forecast` - 获取指定城市天气预报
### ✏️ MpWiki (修改)
**修改接口:**
- `GET /mp/wiki/article/{articleId}` - 文章详情
### ✏️ MpWish (修改)
**修改接口:**
- `GET /mp/wish` - 心愿单列表
- `POST /mp/wish` - 创建心愿
## 支付服务
### ✏️ AdminPayment (修改)
**修改接口:**
- `GET /admin/payment/{transactionId}` - 支付交易列表
- `GET /admin/payment/order/{orderId}` - 交易详情
### ✏️ InternalPayment (修改)
**修改接口:**
- `GET /internal/payment/status/{orderId}` - 创建预支付订单
- 名称: ~~Create prepay order (called by BFF)~~**创建预支付订单**
- `GET /internal/payment/transactions/{orderId}` - 查询支付状态
- 名称: ~~Query payment status (called by BFF)~~**查询支付状态**
- `POST /internal/payment/refund` - 订单交易记录列表
- 名称: ~~List all transactions for an order (called by BFF)~~**订单交易记录列表**
### ✏️ PaymentCallback (修改)
**修改接口:**
- `POST /pay/callback/refund-notify/{mchId}` - 支付成功回调
## 攻略服务
### ✏️ AdminGuideArticle (修改)
**修改接口:**
- `GET /admin/guide/article/list` - 文章列表
- `GET /admin/guide/article/{articleId}` - 文章详情
- `PUT /admin/guide/article/{articleId}/status` - 发布/下架
- `PUT /admin/guide/article/{articleId}/recommend` - 设置推荐
- `PUT /admin/guide/article/{articleId}/top` - 设置置顶
### ✏️ AdminGuideCategory (修改)
**修改接口:**
- `GET /admin/guide/category/list` - 分类列表
- `GET /admin/guide/category/enabled` - 启用的分类列表
- `DELETE /admin/guide/category/{categoryId}` - 删除分类
- `PUT /admin/guide/category/{categoryId}/status` - 更新分类状态
### ✏️ AdminGuideTag (修改)
**修改接口:**
- `GET /admin/guide/tag/managed` - 系统标签列表
- `GET /admin/guide/tag/all` - 所有标签列表
- `PUT /admin/guide/tag/article/{articleId}` - 更新文章标签
### ✏️ InternalWiki (修改)
**修改接口:**
- `GET /internal/wiki/category/{categoryId}/articles` - 分页查询指定分类下的已发布文章
- `GET /internal/wiki/article/{articleId}` - 查询已发布文章详情
## 文件服务
### ✏️ File (修改)
**修改接口:**
- `POST /admin/file/upload/token` - 请求上传凭证
- `POST /admin/file/upload/confirm` - 确认上传完成
- `GET /admin/file/list` - 文件列表(分页)
- `GET /admin/file/{fileId}` - 文件详情
- `DELETE /admin/file/{fileId}` - 删除文件
- `GET /admin/file/{fileId}/refs` - 文件引用列表
- `GET /admin/file/stats` - 存储统计
- `GET /admin/file/{fileId}/preview` - 文件内容流式预览
### ✏️ InternalFile (修改)
**修改接口:**
- `POST /internal/file/bindRefs` - 绑定文件到业务实体
- `POST /internal/file/unbindRefs` - 解绑业务实体的所有文件
- `POST /internal/file/upload/direct` - 内部直接上传文件(服务间调用)
- `POST /internal/file/upload/chunk/init` - 分片上传-初始化
- `POST /internal/file/upload/chunk` - 分片上传-上传分片
- `POST /internal/file/upload/chunk/complete` - 分片上传-完成合并
- `POST /internal/file/upload/chunk/cancel` - 分片上传-取消
### ✏️ MpFile (修改)
**修改接口:**
- `POST /mp/file/upload` - 上传文件C端用户
## 用户服务
### ✏️ AdminAgreement (修改)
**修改接口:**
- `GET /admin/agreement` - 协议列表
### ✏️ AdminBanner (修改)
**修改接口:**
- `GET /admin/banner` - Banner列表
### ✏️ AdminContact (修改)
**修改接口:**
- `GET /admin/contact` - 联系方式列表
- `GET /admin/contact/{id}` - 联系方式详情
- `POST /admin/contact` - 创建联系方式
- `PUT /admin/contact/{id}` - 更新联系方式
### ✏️ AdminCustomer (修改)
**修改接口:**
- `GET /admin/customer` - 客户列表
- `GET /admin/customer/{userId}` - 客户详情
- `POST /admin/customer/{userId}/ban` - 封禁客户
- `POST /admin/customer/{userId}/unban` - 解封客户
### ✏️ AdminDesigner (修改)
**修改接口:**
- `GET /admin/designer/profile` - 获取我的个人资料(已废弃,请使用 /admin/profile/me
- `GET /admin/designer/orders` - 我的订单列表(已废弃,请使用 /admin/profile/orders
- `GET /admin/designer/products` - 我的产品列表(已废弃,请使用 /admin/profile/products
### ✏️ AdminExploreCategory (修改)
**修改接口:**
- `GET /admin/explore/category` - 探索分类列表
### ✏️ AdminFrontendConfig (修改)
**修改接口:**
- `GET /admin/frontend-config` - 配置列表
### ✏️ AdminProfile (修改)
**修改接口:**
- `GET /admin/profile/dashboard` - 工作台仪表盘(角色分发,支持时间范围)
- 返回类型: `` → `Result<Object>`
- `GET /admin/profile/reviews` - 我的评价列表
- `GET /admin/profile/orders` - 订单列表
- `GET /admin/profile/products` - 产品列表
### ✏️ AdminTopic (修改)
**修改接口:**
- `GET /admin/topic` - 专题列表
### ✏️ AdminUser (修改)
**修改接口:**
- `POST /admin/user` - 创建管理员
- `PUT /admin/user/{adminId}` - 更新管理员
- `DELETE /admin/user/{adminId}` - 删除管理员
- `POST /admin/user/{adminId}/unlock` - 解锁管理员
- `POST /admin/user/{adminId}/reset-password` - 重置密码
- `PUT /admin/user/{adminId}/wechat-binding` - 修改企业微信绑定(支持换绑)
- `GET /admin/user/{adminId}` - 获取管理员详情
- `GET /admin/user` - 管理员列表
### ✏️ Auth (修改)
**修改接口:**
- `POST /admin/auth/login` - 管理员登录
- `POST /admin/auth/wechat/verify-2fa` - 2FA验证
- `PUT /admin/auth/password` - 修改密码
- `POST /admin/auth/logout` - 管理员登出
- `GET /admin/auth/2fa/qrcode` - 生成2FA扫码会话
- `GET /admin/auth/2fa/callback` - 2FA企微扫码回调
- `GET /admin/auth/wechat-qr` - 生成企业微信扫码登录会话
- `GET /admin/auth/wechat-qr/callback` - 企业微信扫码登录回调
- `GET /admin/auth/wechat-qr/status` - 查询企业微信扫码登录状态
- `GET /admin/auth/2fa/check` - 查询2FA扫码状态
- `POST /admin/auth/switch-role` - 切换当前角色
- `PUT /admin/auth/avatar` - 更新头像
- `GET /admin/auth/info` - 获取当前管理员信息
### ✏️ Favorite (修改)
**修改接口:**
- `POST /user/favorite` - 添加收藏
- `GET /user/favorite` - 收藏列表
- `DELETE /user/favorite/{favoriteId}` - 删除收藏
### ✏️ Footprint (修改)
**修改接口:**
- `POST /user/footprint` - 添加足迹
- `GET /user/footprint` - 足迹列表
- `DELETE /user/footprint/{footprintId}` - 删除足迹
### ✏️ InternalApproval (修改)
**修改接口:**
- `POST /internal/wechat/submit-approval` - 提交企业微信OA审批
- 名称: ~~Submit approval to enterprise WeChat OA~~**提交企业微信OA审批**
- `POST /internal/wechat/revoke-approval/{spNo}` - 撤销企业微信OA审批
- 名称: ~~Revoke a pending approval in enterprise WeChat OA~~**撤销企业微信OA审批**
- `GET /internal/wechat/approval-status/{spNo}` - 查询企业微信OA审批状态
- 名称: ~~Get approval status from enterprise WeChat OA~~**查询企业微信OA审批状态**
### ✏️ InternalContact (修改)
**修改接口:**
- `GET /internal/mp/contact/active` - 获取当前有效联系方式列表
### ✏️ InternalExploreCategory (修改)
**修改接口:**
- `GET /internal/mp/explore/active` - 获取上线探索分类列表
### ✏️ InternalLike (修改)
**修改接口:**
- `POST /internal/like/toggle` - 切换点赞状态(通用)
- `GET /internal/like/check` - 检查是否已点赞(通用)
- `POST /internal/like/batch-check` - 批量检查是否已点赞接受字符串ID,避免JS大数精度丢失
### ✏️ InternalLoginLog (修改)
**修改接口:**
- `GET /internal/login-logs` - 查询登录日志
- 名称: ~~Query login logs~~**查询登录日志**
### ✏️ InternalMpDict (修改)
**修改接口:**
- `GET /internal/mp/dict/all` - 获取所有字典数据(C端小程序)
- `GET /internal/mp/dict/type/{dictType}` - 按字典类型获取字典数据列表
### ✏️ InternalMpMessage (修改)
**修改接口:**
- `GET /internal/mp/message/categories` - 消息分类列表(含未读数和最新消息预览)
- `GET /internal/mp/message/list` - 分类内消息列表(进入后自动标记已读)
- `GET /internal/mp/message/unread-count` - 获取总未读数
- `PUT /internal/mp/message/read-all` - 全部标记已读
### ✏️ InternalMpUser (修改)
**修改接口:**
- `GET /internal/mp/user/profile` - 获取用户信息
- `POST /internal/mp/user/favorite` - 添加收藏
- `GET /internal/mp/user/favorite` - 收藏列表
- `GET /internal/mp/user/favorite/check` - 检查是否已收藏
- `DELETE /internal/mp/user/favorite/by-target` - 按目标取消收藏
- `POST /internal/mp/user/footprint` - 记录足迹
- `GET /internal/mp/user/footprint` - 足迹列表
- `POST /internal/mp/user/traveler` - 添加出行人
- `GET /internal/mp/user/traveler` - 出行人列表
### ✏️ InternalUser (修改)
**修改接口:**
- `GET /internal/user/admin/info/{adminId}` - 根据ID获取管理员基本信息
- 名称: ~~Get admin basic info by ID~~**根据ID获取管理员基本信息**
- `POST /internal/user/admin/batch-info` - 批量获取管理员基本信息
- 名称: ~~Batch get admin basic info~~**批量获取管理员基本信息**
- `GET /internal/user/departments` - 获取所有部门列表
- 名称: ~~Get all departments~~**获取所有部门列表**
- `GET /internal/user/admin/dept-members/{deptId}` - 获取部门下的管理员ID列表
- 名称: ~~Get admin IDs belonging to a department~~**获取部门下的管理员ID列表**
- `GET /internal/user/admin/by-role-key` - 根据角色标识获取管理员列表
- 名称: ~~Get admins by role key~~**根据角色标识获取管理员列表**
- `GET /internal/user/find-by-phone` - 根据手机号查找C端用户ID
- 名称: ~~Find C-end user ID by phone number~~**根据手机号查找C端用户ID**
- `POST /internal/user/wechat/miniapp/generate-url-link` - 生成小程序URL Link
- 名称: ~~Generate mini program URL Link for sharing~~**生成小程序URL Link**
- `POST /internal/user/wechat/send-message` - 发送企业微信消息
- 名称: ~~Send WeChat message to users~~**发送企业微信消息**
### ✏️ InternalWechat (修改)
**修改接口:**
- `POST /internal/wechat/user/sync` - 同步单个企微用户(回调触发)
- 名称: ~~Sync single user from callback~~**同步单个企微用户(回调触发)**
- 返回类型: `` → `Result<Void>`
- `DELETE /internal/wechat/user/{userid}` - 删除单个企微用户(回调触发)
- 名称: ~~Delete single user from callback~~**删除单个企微用户(回调触发)**
- 返回类型: `` → `Result<Void>`
- `POST /internal/wechat/department/sync` - 同步单个企微部门(回调触发)
- 名称: ~~Sync single department from callback~~**同步单个企微部门(回调触发)**
- 返回类型: `` → `Result<Void>`
- `POST /internal/wechat/external-contact/event` - 接收外部联系人变更事件
- 名称: ~~Receive external contact change event~~**接收外部联系人变更事件**
- 返回类型: `` → `Result<Void>`
- `DELETE /internal/wechat/department/{deptId}` - 删除单个企微部门(回调触发)
- 名称: ~~Delete single department from callback~~**删除单个企微部门(回调触发)**
- 返回类型: `` → `Result<Void>`
### ✏️ InternalWish (修改)
**修改接口:**
- `GET /internal/mp/wish` - 获取用户祈愿列表
- `POST /internal/mp/wish` - 创建祈愿
### ✏️ PublicDict (修改)
**修改接口:**
- `GET /dict/all` - 获取所有字典数据(公开接口)
- 名称: ~~获取所有字典数据~~**获取所有字典数据(公开接口)**
### ✏️ SysDict (修改)
**修改接口:**
- `GET /admin/dict/all` - 获取所有字典数据
- `POST /admin/dict/type` - 创建字典类型
- `PUT /admin/dict/type/{id}` - 更新字典类型
- `DELETE /admin/dict/type/{id}` - 删除字典类型
- `GET /admin/dict/type` - 分页查询字典类型
- `GET /admin/dict/type/{dictTypeId}` - 根据ID获取字典类型详情
- `POST /admin/dict/data` - 创建字典数据
- `PUT /admin/dict/data/{id}` - 更新字典数据
- `DELETE /admin/dict/data/{id}` - 删除字典数据
- `GET /admin/dict/data/detail/{dictDataId}` - 根据ID获取字典数据详情
- `GET /admin/dict/data/tree/{dictTypeId}` - 按类型查询字典数据(树形结构)
- `GET /admin/dict/data/{dictType}` - 按类型查询字典数据
### ✏️ SysJob (修改)
**修改接口:**
- `POST /admin/job` - 创建定时任务
- 返回类型: `Result<SysJob>``Result<SysJobVO>`
- `PUT /admin/job/{jobId}` - 更新定时任务
- 返回类型: `Result<SysJob>``Result<SysJobVO>`
- `GET /admin/job` - 分页查询定时任务
- 返回类型: `Result<PageResult<SysJob>>``Result<PageResult<SysJobVO>>`
- `POST /admin/job/{jobId}/pause` - 暂停任务
- `POST /admin/job/{jobId}/resume` - 恢复任务
- `POST /admin/job/{jobId}/trigger` - 立即执行一次
- `GET /admin/job/{jobId}/logs` - 查询任务日志
- 返回类型: `Result<PageResult<SysJobLog>>``Result<PageResult<SysJobLogVO>>`
### ✏️ SysMenu (修改)
**修改接口:**
- `POST /admin/menu` - 创建菜单
- `GET /admin/menu/tree` - 获取完整菜单树
- `GET /admin/menu/my` - 获取当前管理员菜单
### ✏️ SysRole (修改)
**修改接口:**
- `POST /admin/role` - 创建角色
- `PUT /admin/role/{roleId}` - 更新角色
- `DELETE /admin/role/{roleId}` - 删除角色
- `GET /admin/role/{roleId}` - 获取角色详情(含菜单ID)
- `GET /admin/role` - 分页查询角色
- `GET /admin/role/all` - 获取所有角色(下拉)
- `PUT /admin/role/{roleId}/menus` - 分配菜单权限
### ✏️ Traveler (修改)
**修改接口:**
- `POST /user/traveler` - 新增出行人
- `GET /user/traveler` - 出行人列表
- `GET /user/traveler/{travelerId}` - 出行人详情
- `PUT /user/traveler/{travelerId}` - 更新出行人
- `PUT /user/traveler/{travelerId}/default` - 设为默认出行人
### ✏️ User (修改)
**修改接口:**
- `POST /user/sms/send` - 发送短信验证码
- `POST /user/login/sms` - 手机号验证码登录
- `POST /user/login` - 微信登录
- `GET /user/profile` - 获取用户信息
- `PUT /user/profile` - 更新用户信息
- `POST /user/logout` - 用户登出
- `DELETE /user/account` - 注销账号
- `GET /user/favorite/check` - 检查是否已收藏
### ✏️ WechatSync (修改)
**修改接口:**
- `POST /admin/wechat/sync/departments` - 手动同步部门
- `POST /admin/wechat/sync/users` - 手动同步用户
- `POST /admin/wechat/sync/all` - 手动同步全部(部门+用户)
- `GET /admin/wechat/users` - 查询企业微信用户(分页+搜索)
- `GET /admin/wechat/departments/tree` - 部门树(下拉筛选)
### ✏️ AdminNotification (修改)
**修改接口:**
- `GET /admin/notification/config` - 获取通知配置列表(按分类分组)
- `PUT /admin/notification/config/{id}/toggle` - 切换通道开关
- `GET /admin/notification/logs` - 查询发送日志
## 监控服务
### ✏️ ApprovalLog (修改)
**修改接口:**
- `GET /admin/monitor/approval-logs` - 审批日志分页查询
- `GET /admin/monitor/approval-logs/{id}` - 审批日志详情
### ✏️ DataRetention (修改)
**修改接口:**
- `POST /admin/monitor/data-retention/cleanup` - 手动触发数据清理
### ✏️ ErrorLog (修改)
**修改接口:**
- `GET /admin/monitor/error-logs` - 错误日志分页查询
### ✏️ InternalLog (修改)
**修改接口:**
- `POST /internal/monitor/operation-log` - 接收操作日志
- 名称: ~~Receive operation log~~**接收操作日志**
- 返回类型: `` → `Result<Void>`
- `POST /internal/monitor/error-log` - 接收错误日志
- 名称: ~~Receive error log~~**接收错误日志**
- 返回类型: `` → `Result<Void>`
- `POST /internal/monitor/notification-log` - 接收通知日志
- 名称: ~~Receive notification log~~**接收通知日志**
- 返回类型: `` → `Result<Void>`
- `POST /internal/monitor/approval-log` - 接收审批日志
- 名称: ~~Receive approval log~~**接收审批日志**
- 返回类型: `` → `Result<Void>`
- `GET /internal/monitor/notification-log/customer-stats` - 获取用户客户统计
- 名称: ~~Get customer stats for a user (add/loss counts)~~**获取用户客户统计**
### ✏️ LoginLog (修改)
**修改接口:**
- `GET /admin/monitor/login-logs` - 登录日志分页查询
### ✏️ MysqlMonitor (修改)
**修改接口:**
- `GET /admin/monitor/mysql` - MySQL实时监控数据
- `GET /admin/monitor/mysql/tables` - 表空间列表
- `GET /admin/monitor/mysql/slow-queries` - 慢SQL查询统计
### ✏️ NotificationLog (修改)
**修改接口:**
- `GET /admin/monitor/notification-logs` - 消息通知日志分页查询
### ✏️ OperationLog (修改)
**修改接口:**
- `GET /admin/monitor/operation-logs` - 操作日志分页查询
### ✏️ RedisMonitor (修改)
**修改接口:**
- `GET /admin/monitor/redis` - Redis实时监控数据
### ✏️ RocketMqMonitor (修改)
**修改接口:**
- `GET /admin/monitor/rocketmq` - RocketMQ概览
- `GET /admin/monitor/rocketmq/topics` - Topic统计
- `GET /admin/monitor/rocketmq/consumer-groups` - 消费者组统计
### ✏️ ServiceMonitor (修改)
**修改接口:**
- `GET /admin/monitor/services` - 微服务列表和健康状态
## 素材服务
### ✏️ InternalMaterial (修改)
**修改接口:**
- `POST /internal/material/ref/bind` - 绑定引用
- `POST /internal/material/ref/batch-bind` - 批量绑定引用
- `DELETE /internal/material/ref/unbind` - 解绑引用
- `DELETE /internal/material/ref/batch-unbind` - 批量解绑引用
### ✏️ MaterialCategoryPermission (修改)
**修改接口:**
- `GET /admin/material/category/permissions/{roleCode}` - 获取角色的分类权限
- `PUT /admin/material/category/permissions/{roleCode}` - 更新角色的分类权限
### ✏️ Material (修改)
**修改接口:**
- `POST /admin/material/upload/token` - 获取上传凭证
- `POST /admin/material/upload/confirm` - 确认上传完成
- `POST /admin/material/upload/folder` - 文件夹上传初始化(创建分类+批量获取凭证)
- `GET /admin/material/list` - 素材列表
- `PUT /admin/material/{materialId}` - 更新素材信息
- `DELETE /admin/material/{materialId}` - 删除素材
- `DELETE /admin/material/batch` - 批量删除素材
- `PUT /admin/material/{materialId}/tags` - 更新素材标签
- `PUT /admin/material/batch/tags` - 批量更新标签
- `GET /admin/material/{materialId}/refs` - 查看素材引用记录
- `GET /admin/material/categories` - 获取有权限的分类列表(含素材数量)
- `POST /admin/material/category/sub` - 创建子分类
- `DELETE /admin/material/category/sub/{categoryId}` - 删除子分类
### ✏️ MpMaterial (修改)
**修改接口:**
- `GET /mp/material/miniprogram` - 获取小程序分类下的全部素材
## 订单服务
### ✏️ AdminAlbum (修改)
**修改接口:**
- `POST /admin/order/{orderId}/album/folder` - 创建相册文件夹
- `PUT /admin/order/album/folder/{folderId}` - 编辑相册文件夹
- `DELETE /admin/order/album/folder/{folderId}` - 删除相册文件夹
- `POST /admin/order/album/folder/{folderId}/files` - 批量添加文件到文件夹
- `PUT /admin/order/album/file/{albumFileId}` - 编辑文件信息
- `GET /admin/order/album/folder/{folderId}/files` - 查询文件夹下的文件列表
- `GET /admin/order/album/my-uploads` - 我的上传
- 名称: ~~我的上传(当前管理员上传的所有相册文件)~~**我的上传**
### ✏️ AdminEarlyBird (修改)
**修改接口:**
- `GET /admin/order/early-bird/list` - 早鸟优惠计划列表
- `GET /admin/order/early-bird/{planId}` - 早鸟优惠计划详情
- `POST /admin/order/early-bird` - 创建早鸟优惠计划
- `PUT /admin/order/early-bird/{planId}` - 修改早鸟优惠计划
- `DELETE /admin/order/early-bird/{planId}` - 删除早鸟优惠计划
- `PUT /admin/order/early-bird/{planId}/toggle` - 启用/禁用早鸟优惠计划
### ✏️ AdminOrderConfig (修改)
**修改接口:**
- `GET /admin/order/config/expiry-minutes` - 获取订单过期配置
- `PUT /admin/order/config/expiry-minutes` - 设置订单过期时间(分钟)
### ✏️ AdminOrder (修改)
**修改接口:**
- `POST /admin/order/quote` - 报价预览
- `GET /admin/order/list` - 订单列表
- `GET /admin/order/{orderId}` - 订单详情
- `POST /admin/order/{orderId}/remark` - 添加备注
- `PUT /admin/order/{orderId}/deposit` - 修改定金金额
- `PUT /admin/order/{orderId}` - 编辑订单
- `POST /admin/order/{orderId}/discount` - 添加优惠项
- `PUT /admin/order/{orderId}/discount/{discountId}` - 修改优惠项
- `DELETE /admin/order/{orderId}/discount/{discountId}` - 删除优惠项
- `PUT /admin/order/{orderId}/vehicle-assignment` - 分配车辆信息
- `PUT /admin/order/{orderId}/hotel-assignment` - 分配酒店信息
- `PUT /admin/order/{orderId}/balance-pay-method` - 设置尾款支付方式
### ✏️ AdminOrderItinerary (修改)
**修改接口:**
- `POST /admin/order/{orderId}/itinerary/skip` - 跳过节点
- `DELETE /admin/order/{orderId}/itinerary/skip/{editId}` - 恢复跳过的节点
- `POST /admin/order/{orderId}/itinerary/add` - 新增节点
- `DELETE /admin/order/{orderId}/itinerary/add/{editId}` - 删除新增的节点
- `GET /admin/order/{orderId}/itinerary/merged` - 获取合并后的行程(原始+编辑)
- `GET /admin/order/{orderId}/itinerary/edits` - 获取行程编辑记录列表
- `POST /admin/order/{orderId}/itinerary/room-type-change/preview` - 房型切换差价预览
- `POST /admin/order/{orderId}/itinerary/room-type-change` - 房型切换
- `POST /admin/order/{orderId}/itinerary/vehicle-type-change/preview` - 车型切换差价预览
- `POST /admin/order/{orderId}/itinerary/vehicle-type-change` - 车型切换
- `POST /admin/order/{orderId}/itinerary/add-day` - 新增整天行程
- `DELETE /admin/order/{orderId}/itinerary/day/{editId}` - 删除新增的整天行程
- `PUT /admin/order/{orderId}/itinerary/edit/{editId}` - 修改编辑记录
- `POST /admin/order/{orderId}/itinerary/confirm/{editId}` - 确认单条修改
- `POST /admin/order/{orderId}/itinerary/confirm-all` - 批量确认所有待确认修改
- `DELETE /admin/order/{orderId}/itinerary/pending/{editId}` - 撤回待确认的修改
### ✏️ AdminOrderTodo (修改)
**修改接口:**
- `GET /admin/order/{orderId}/todos` - 获取订单待办列表
- `PUT /admin/order/todo/{todoId}/complete` - 完成待办
- `GET /admin/order/todo/my-list` - 我的待办列表
- `GET /admin/order/todo/my-count` - 我的待办数量
- `GET /admin/order/todo/customizer-list` - 定制师列表
- `PUT /admin/order/{orderId}/customizer` - 更换定制师
- `GET /admin/order/todo/contract-eligible` - 可签合同订单列表(保险已完成)
### ✏️ AdminRefund (修改)
**修改接口:**
- `GET /admin/order/refund/list` - 退款申请列表
- `GET /admin/order/refund/{applicationId}` - 退款申请详情
- `GET /admin/order/refund/reason/list` - 退款原因列表
- `POST /admin/order/refund/reason` - 创建退款原因
- `PUT /admin/order/refund/reason/{reasonId}` - 修改退款原因
- `DELETE /admin/order/refund/reason/{reasonId}` - 删除退款原因
### ✏️ AdminRefundPolicy (修改)
**修改接口:**
- `GET /admin/order/refund-policy/list` - 退款政策列表
- `GET /admin/order/refund-policy/{policyId}` - 退款政策详情
- `PUT /admin/order/refund-policy/{policyId}` - 修改退款政策
### ✏️ AdminWorkOrder (修改)
**修改接口:**
- `GET /admin/order/work-order/list` - 工单列表
- `GET /admin/order/work-order/{workOrderId}` - 工单详情
- `GET /admin/order/work-order/stats` - 工单统计
- 名称: ~~工单统计(待处理数等)~~**工单统计**
- `POST /admin/order/work-order` - 创建工单
- `PUT /admin/order/work-order/{workOrderId}/process` - 处理工单(解决/驳回)
- 名称: ~~处理工单(解决/驳回)~~**处理工单(解决/驳回)**
- `PUT /admin/order/work-order/{workOrderId}/assign` - 指派工单
- `POST /admin/order/work-order/{workOrderId}/comment` - 添加工单备注
- 名称: ~~添加备注~~**添加工单备注**
- `GET /admin/order/work-order/count-by-order/{orderId}` - 按订单查工单数量
### ✏️ InternalAlbum (修改)
**修改接口:**
- `GET /internal/mp/album/orders` - 用户有相册的订单列表
- `GET /internal/mp/album/folder/{folderId}/files` - 文件夹下的文件列表
- `GET /internal/mp/album/file/{albumFileId}/download-url` - 获取文件下载链接
### ✏️ InternalDashboard (修改)
**修改接口:**
- `GET /internal/order/dashboard/overview-stats` - 概览统计
- 名称: ~~概览统计(支持定制师/全局,支持今日/本周/本月)~~**概览统计**
- `GET /internal/order/dashboard/todo-summary` - 待办分类汇总
- `GET /internal/order/dashboard/trend` - 数据趋势
- 名称: ~~数据趋势(按天聚合)~~**数据趋势**
- `GET /internal/order/dashboard/funnel` - 转化漏斗
- `GET /internal/order/dashboard/upcoming-trips` - 即将出行列表
- `GET /internal/order/dashboard/ranking` - 业绩排行
- 名称: ~~业绩排行(本月定制师排名)~~**业绩排行**
- `GET /internal/order/dashboard/calendar-events` - 日历事件
- `GET /internal/order/dashboard/finance-stats` - 财务统计
- `GET /internal/order/dashboard/refund-summary` - 退款汇总
### ✏️ InternalDesignerOrder (修改)
**修改接口:**
- `GET /internal/order/designer-stats` - 获取定制师订单统计
- `GET /internal/order/global-stats` - 获取全局订单统计
- `GET /internal/order/designer-list` - 定制师订单列表
### ✏️ InternalEarlyBird (修改)
**修改接口:**
- `GET /internal/mp/early-bird/active` - 获取当前有效的早鸟优惠计划列表
- `GET /internal/mp/early-bird/match` - 匹配最优早鸟优惠计划
### ✏️ InternalInvoice (修改)
**修改接口:**
- `POST /internal/mp/invoice/apply` - 申请开票
- `GET /internal/mp/invoice/{id}` - 发票详情
- `GET /internal/mp/invoice/order/{orderId}` - 通过订单ID查询发票
### ✏️ InternalMpOrder (修改)
**修改接口:**
- `POST /internal/mp/order/create` - 创建订单
- `GET /internal/mp/order/list` - 订单列表
- `GET /internal/mp/order/{orderId}` - 订单详情
- `GET /internal/mp/order/lookup` - 通过联系人手机号+姓名查找订单
- 名称: ~~通过联系人手机号+姓名查找订单(无需登录)~~**通过联系人手机号+姓名查找订单**
- `POST /internal/mp/order/bind-by-contact` - 绑定未绑定的订单
- 名称: ~~绑定未绑定的订单(通过联系人手机号+姓名)~~**绑定未绑定的订单**
- `POST /internal/mp/order/{orderId}/approve-unlock` - 客户同意解锁订单
- `GET /internal/mp/order/count` - 各状态订单数量
- `PUT /internal/mp/order/{orderId}/mark-reviewed` - 标记订单已评价
- 名称: ~~标记订单已评价(评价服务回调)~~**标记订单已评价**
### ✏️ InternalMpTrip (修改)
**修改接口:**
- `GET /internal/mp/trip/list` - 行程列表
- `GET /internal/mp/trip/{orderId}` - 行程详情
- `GET /internal/mp/trip/today` - 今日行程
### ✏️ InternalOrderStats (修改)
**修改接口:**
- `GET /internal/mp/order/product-sold-count` - 获取产品已购出行人总数
- `GET /internal/mp/order/participant-family-count` - 获取产品参与家庭数
- `POST /internal/mp/order/invoice/reissue` - 发票换开
### ✏️ InternalOrderTraveler (修改)
**修改接口:**
- `GET /internal/order/traveler/validate/{orderId}` - 验证订单出行人信息
- 名称: ~~验证订单出行人信息(供支付服务调用)~~**验证订单出行人信息**
### ✏️ InternalPaymentOrder (修改)
**修改接口:**
- `GET /internal/order/{orderId}/pay-info` - 获取订单支付信息
- `POST /internal/order/payment-result` - 通知支付成功
- `POST /internal/order/refund-result` - 通知退款成功
- `GET /internal/order/{orderId}/basic` - 获取订单基本信息(供合同服务调用)
### ✏️ InternalRefund (修改)
**修改接口:**
- `GET /internal/mp/order/{orderId}/refund-preview` - 退款金额预览
- `GET /internal/mp/order/refund-reasons` - 退款原因列表C端
- 名称: ~~退款原因列表~~**退款原因列表C端**
- `POST /internal/mp/order/{orderId}/refund` - 提交退款申请
- `GET /internal/mp/order/refund/{applicationId}` - 退款申请详情C端
- 名称: ~~退款申请详情~~**退款申请详情C端**
- `GET /internal/mp/order/{orderId}/refund-detail` - 根据订单ID获取最新退款申请
- 名称: ~~根据订单ID获取最新退款申请详情~~**根据订单ID获取最新退款申请**
- `POST /internal/mp/order/refund/{applicationId}/cancel` - 撤回退款申请
- `POST /internal/order/refund-appeal-result` - 企微退款申诉审批结果回调
- 返回类型: `` → `Result<Void>`
- `POST /internal/order/refund-application-result` - 企微退款申请审批结果回调
- 返回类型: `` → `Result<Void>`
### ✏️ MpOrder (修改)
**修改接口:**
- `GET /mp/order/list` - 我的订单列表
- `GET /mp/order/{orderId}` - 订单详情
### ✏️ MpWeather (修改)
**修改接口:**
- `GET /internal/mp/weather/itinerary/{orderId}` - 获取订单行程天气
- `GET /internal/mp/weather/live` - 获取指定城市实况天气
- `GET /internal/mp/weather/forecast` - 获取指定城市天气预报
## 评价服务
### ✏️ AdminReview (修改)
**修改接口:**
- `GET /admin/review/list` - 评价列表(支持好中差评/有图/有视频筛选)
- `GET /admin/review/{reviewId}` - 评价详情
- `POST /admin/review/{reviewId}/approve` - 通过评价
- `POST /admin/review/{reviewId}/reject` - 拒绝评价
- `POST /admin/review/{reviewId}/override-approve` - 覆盖通过(机器拒绝的)
### ✏️ InternalMpReview (修改)
**修改接口:**
- `POST /internal/mp/review/create` - 创建评价(仅针对产品,每个订单仅可评价一次)
- `GET /internal/mp/review/my` - 我的评价列表
- `GET /internal/mp/review/target` - 某目标的已通过评价(公开,支持好中差评/有图/有视频筛选)
- `GET /internal/mp/review/search` - 关键词搜索评价(公开)
- `GET /internal/mp/review/featured` - 首页精选评价
### ✏️ InternalReview (修改)
**修改接口:**
- `GET /internal/review/target-stats` - 目标评价统计(平均分,数量)
- `GET /internal/review/target-list` - 目标已通过评价列表
- `GET /internal/review/stats-by-targets` - 批量目标评价统计(聚合多个targetId)
- `GET /internal/review/reviews-by-targets` - 批量目标已通过评价列表(聚合多个targetId)
- `GET /internal/review/product-highlights` - 产品精选评价(最高评分+最高点赞+统计)
- `GET /internal/review/customizer-reviews` - 定制师已通过评价列表
## 资源服务
### ✏️ Activity (修改)
**修改接口:**
- `POST /admin/activity/item` - 创建游玩项目
- `GET /admin/activity/items` - 游玩项目列表
- `GET /admin/activity/item/{activityId}` - 游玩项目详情
- `PUT /admin/activity/item/{activityId}` - 更新游玩项目
- `DELETE /admin/activity/item/{activityId}` - 删除游玩项目
- `POST /admin/activity/item/{activityId}/submit-approval` - 提交启用/禁用审批
- `PUT /admin/activity/item/{activityId}/status` - 启用/禁用切换
- `PUT /admin/activity/items/batch/status` - 批量启用/禁用
- `DELETE /admin/activity/items/batch` - 批量删除
### ✏️ ActivityPriceCalendar (修改)
**修改接口:**
- `GET /admin/activity/item/{activityId}/prices` - 查询价格日历
- `PUT /admin/activity/item/{activityId}/prices` - 批量设置价格
- `PUT /admin/activity/item/{activityId}/prices/batch-status` - 批量修改可接待状态
- `DELETE /admin/activity/item/{activityId}/prices` - 批量清除价格
### ✏️ ActivityTag (修改)
**修改接口:**
- `GET /admin/activity/tags` - 获取管理标签列表(分页)
- `GET /admin/activity/tags/all` - 获取全部标签
- `POST /admin/activity/tag` - 创建管理标签
- `POST /admin/activity/tag/adhoc` - 解析自定义标签
- `PUT /admin/activity/tag/{tagId}` - 编辑标签
- `DELETE /admin/activity/tag/{tagId}` - 删除标签
- `PUT /admin/activity/item/{activityId}/tags` - 更新项目标签
- `PUT /admin/activity/items/batch/tags` - 批量打标签
### ✏️ InternalActivity (修改)
**修改接口:**
- `GET /internal/activity/item/{activityId}` - 获取项目简要信息
- `GET /internal/activity/items/batch` - 批量获取项目简要信息
- `POST /internal/activity/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
### ✏️ InternalMpActivity (修改)
**修改接口:**
- `GET /internal/mp/activity/list` - C端活动列表
- `GET /internal/mp/activity/{activityId}` - C端活动详情
### ✏️ InternalMpResourceBrief (修改)
**修改接口:**
- `GET /internal/mp/resource/scenic/brief` - 批量查询景区摘要
- `GET /internal/mp/resource/restaurant/brief` - 批量查询餐厅摘要
- `GET /internal/mp/resource/activity/brief` - 批量查询活动摘要
### ✏️ InternalResource (修改)
**修改接口:**
- `POST /internal/resource/approval-result` - 处理审批回调 - 分发到9个资源领域服务
- 返回类型: `` → `Result<Void>`
### ✏️ InternalResourceDetail (修改)
**修改接口:**
- `GET /internal/mp/resource/batch-details` - 批量查询资源详情(行程节点用)
### ✏️ InternalResourceStats (修改)
**修改接口:**
- `GET /internal/resource/hotel/stats` - 获取酒店统计
- `GET /internal/resource/vehicle/stats` - 获取车辆统计
### ✏️ CostItem (修改)
**修改接口:**
- `POST /admin/cost/item` - 创建费用项
- `GET /admin/cost/items` - 费用项列表
- `GET /admin/cost/item/{costId}` - 费用项详情
- `PUT /admin/cost/item/{costId}` - 更新费用项
- `DELETE /admin/cost/item/{costId}` - 删除费用项
- `POST /admin/cost/item/{costId}/submit-approval` - 提交审批
- `GET /admin/cost/items/enabled` - 启用的费用项列表
- `GET /admin/cost/item/{costId}/price-logs` - 费用项价格变更记录
### ✏️ CostPriceCalendar (修改)
**修改接口:**
- `GET /admin/cost/item/{costId}/prices` - 查询价格日历
- `PUT /admin/cost/item/{costId}/prices` - 批量设置价格
- `DELETE /admin/cost/item/{costId}/prices` - 清除价格日历
### ✏️ InternalCost (修改)
**修改接口:**
- `POST /internal/cost/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
- `GET /internal/cost/items/batch` - 批量获取费用项
- `GET /internal/cost/items/prices-by-date` - 按日期获取费用项价格
- `POST /internal/cost/item/{costId}/ref-count` - 更新引用计数
### ✏️ Hotel (修改)
**修改接口:**
- `POST /admin/hotel/item` - 创建住宿
- `GET /admin/hotel/items` - 住宿列表
- `GET /admin/hotel/items/all-simple` - 所有启用的住宿不分页,仅ID和名称
- `GET /admin/hotel/item/{hotelId}` - 住宿详情
- `PUT /admin/hotel/item/{hotelId}` - 更新住宿
- `DELETE /admin/hotel/item/{hotelId}` - 删除住宿
- `POST /admin/hotel/item/{hotelId}/submit-approval` - 提交启用/禁用审批
- `PUT /admin/hotel/item/{hotelId}/status` - 启用/禁用切换
- `PUT /admin/hotel/items/batch/status` - 批量启用/禁用
- `DELETE /admin/hotel/items/batch` - 批量删除
### ✏️ HotelTag (修改)
**修改接口:**
- `GET /admin/hotel/tags` - 预设标签列表(分页)
- `GET /admin/hotel/tags/all` - 所有标签列表
- `POST /admin/hotel/tag` - 创建标签
- `POST /admin/hotel/tag/adhoc` - 查找或创建自定义标签
- `PUT /admin/hotel/tag/{tagId}` - 更新标签
- `DELETE /admin/hotel/tag/{tagId}` - 删除标签
- `PUT /admin/hotel/item/{hotelId}/tags` - 设置住宿标签
- `PUT /admin/hotel/items/batch/tags` - 批量添加/移除标签
### ✏️ InternalHotel (修改)
**修改接口:**
- `GET /internal/hotel/item/{hotelId}` - 获取住宿简要信息
- `GET /internal/hotel/items/batch` - 批量获取住宿简要信息
- `POST /internal/hotel/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
### ✏️ InternalMpHotel (修改)
**修改接口:**
- `GET /internal/mp/hotel/list` - C端住宿列表
- `GET /internal/mp/hotel/{hotelId}` - C端住宿详情
### ✏️ RoomPriceCalendar (修改)
**修改接口:**
- `GET /admin/hotel/room-type/{roomTypeId}/prices` - 查询价格日历
- `PUT /admin/hotel/room-type/{roomTypeId}/prices` - 批量设置价格日历
- `PUT /admin/hotel/room-type/{roomTypeId}/prices/batch-status` - 批量修改日期可售状态
- `DELETE /admin/hotel/room-type/{roomTypeId}/prices` - 删除价格日历
### ✏️ RoomType (修改)
**修改接口:**
- `POST /admin/hotel/{hotelId}/room-type` - 创建房型
- `GET /admin/hotel/{hotelId}/room-types` - 房型列表
- `GET /admin/hotel/room-type/{roomTypeId}` - 房型详情
- `PUT /admin/hotel/room-type/{roomTypeId}` - 更新房型
- `DELETE /admin/hotel/room-type/{roomTypeId}` - 删除房型
- `PUT /admin/hotel/room-type/{roomTypeId}/status` - 启用/禁用房型
- `POST /admin/hotel/room-type/{roomTypeId}/submit-approval` - 提交房型启用/禁用审批
### ✏️ InternalMpRestaurant (修改)
**修改接口:**
- `GET /internal/mp/restaurant/list` - C端餐厅列表
- `GET /internal/mp/restaurant/{restaurantId}` - C端餐厅详情
### ✏️ InternalRestaurant (修改)
**修改接口:**
- `GET /internal/restaurant/item/{restaurantId}` - \u83b7\u53d6\u9910\u5385\u7b80\u8981\u4fe1\u606f
- `GET /internal/restaurant/items/batch` - \u6279\u91cf\u83b7\u53d6\u9910\u5385\u7b80\u8981\u4fe1\u606f
- `POST /internal/restaurant/approval-result` - \u5904\u7406\u5ba1\u6279\u56de\u8c03\u7ed3\u679c
- 返回类型: `` → `Result<Void>`
### ✏️ Restaurant (修改)
**修改接口:**
- `POST /admin/restaurant/item` - 创建餐厅
- `GET /admin/restaurant/items` - 餐厅列表
- `GET /admin/restaurant/item/{restaurantId}` - 餐厅详情
- `PUT /admin/restaurant/item/{restaurantId}` - 更新餐厅
- `DELETE /admin/restaurant/item/{restaurantId}` - 删除餐厅
- `POST /admin/restaurant/item/{restaurantId}/submit-approval` - 提交启用/禁用审批
- `PUT /admin/restaurant/item/{restaurantId}/status` - 上下架切换
- `PUT /admin/restaurant/items/batch/status` - 批量上下架
- `DELETE /admin/restaurant/items/batch` - 批量删除
### ✏️ RestaurantTag (修改)
**修改接口:**
- `GET /admin/restaurant/tags` - \u83b7\u53d6\u7ba1\u7406\u6807\u7b7e\u5217\u8868\uff08\u5206\u9875\uff09
- `GET /admin/restaurant/tags/all` - \u83b7\u53d6\u5168\u90e8\u6807\u7b7e
- `POST /admin/restaurant/tag` - \u521b\u5efa\u7ba1\u7406\u6807\u7b7e
- `POST /admin/restaurant/tag/adhoc` - \u89e3\u6790\u81ea\u5b9a\u4e49\u6807\u7b7e
- `PUT /admin/restaurant/tag/{tagId}` - \u7f16\u8f91\u6807\u7b7e
- `DELETE /admin/restaurant/tag/{tagId}` - \u5220\u9664\u6807\u7b7e
- `PUT /admin/restaurant/item/{restaurantId}/tags` - \u66f4\u65b0\u9910\u5385\u6807\u7b7e
- `PUT /admin/restaurant/items/batch/tags` - \u6279\u91cf\u6253\u6807\u7b7e
### ✏️ InternalMpScenic (修改)
**修改接口:**
- `GET /internal/mp/scenic/list` - C端景区列表
- `GET /internal/mp/scenic/{scenicId}` - C端景区详情
- `GET /internal/mp/scenic/{scenicId}/nearby` - C端附近景区
### ✏️ InternalScenic (修改)
**修改接口:**
- `GET /internal/scenic/spot/{scenicId}` - 获取景区简要信息
- `GET /internal/scenic/spots/batch` - 批量获取景区简要信息
- `GET /internal/scenic/spot/{scenicId}/price/{date}` - 查询某日价格
- `GET /internal/scenic/spot/{scenicId}/available/{date}` - 判断某日是否可售
- `PUT /internal/scenic/spot/{scenicId}/stock/deduct` - 扣减库存
- `PUT /internal/scenic/spot/{scenicId}/stock/restore` - 恢复库存
- `POST /internal/scenic/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
### ✏️ ScenicPriceCalendar (修改)
**修改接口:**
- `GET /admin/scenic/spot/{scenicId}/prices` - 查询价格日历
- `PUT /admin/scenic/spot/{scenicId}/prices` - 批量设置价格
- `PUT /admin/scenic/spot/{scenicId}/prices/status` - 批量修改可售状态
- `DELETE /admin/scenic/spot/{scenicId}/prices` - 批量清除价格
### ✏️ ScenicSeason (修改)
**修改接口:**
- `GET /admin/scenic/spot/{scenicId}/seasons` - 获取景区全部季节内容
- `PUT /admin/scenic/spot/{scenicId}/season/{seasonType}` - 保存/更新季节内容
- `DELETE /admin/scenic/spot/{scenicId}/season/{seasonType}` - 删除季节内容
### ✏️ ScenicSpot (修改)
**修改接口:**
- `POST /admin/scenic/spot` - 创建景区
- `GET /admin/scenic/spots` - 景区列表
- `GET /admin/scenic/spot/{scenicId}` - 景区详情
- `PUT /admin/scenic/spot/{scenicId}` - 更新景区
- `DELETE /admin/scenic/spot/{scenicId}` - 删除景区
- `POST /admin/scenic/spot/{scenicId}/submit-approval` - 提交启用/禁用审批
- `PUT /admin/scenic/spot/{scenicId}/status` - 上下架切换
- `PUT /admin/scenic/spots/batch/status` - 批量上下架
- `DELETE /admin/scenic/spots/batch` - 批量删除
### ✏️ ScenicTag (修改)
**修改接口:**
- `GET /admin/scenic/tags` - 获取管理标签列表(分页)
- `GET /admin/scenic/tags/all` - 获取全部标签
- `POST /admin/scenic/tag` - 创建管理标签
- `POST /admin/scenic/tag/adhoc` - 解析自定义标签
- `PUT /admin/scenic/tag/{tagId}` - 编辑标签
- `DELETE /admin/scenic/tag/{tagId}` - 删除标签
- `PUT /admin/scenic/spot/{scenicId}/tags` - 更新景区标签
- `PUT /admin/scenic/spots/batch/tags` - 批量打标签
### ✏️ InternalService (修改)
**修改接口:**
- `GET /internal/service/item/{serviceId}` - 获取服务简要信息
- `GET /internal/service/items/batch` - 批量获取服务简要信息
- `POST /internal/service/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
### ✏️ ServiceItem (修改)
**修改接口:**
- `POST /admin/service/item` - 创建增值服务
- 名称: ~~创建服务~~**创建增值服务**
- `GET /admin/service/items` - 增值服务列表
- 名称: ~~服务列表~~**增值服务列表**
- `GET /admin/service/item/{serviceId}` - 增值服务详情
- 名称: ~~服务详情~~**增值服务详情**
- `PUT /admin/service/item/{serviceId}` - 更新增值服务
- 名称: ~~更新服务~~**更新增值服务**
- `DELETE /admin/service/item/{serviceId}` - 删除增值服务
- 名称: ~~删除服务~~**删除增值服务**
- `POST /admin/service/item/{serviceId}/submit-approval` - 提交启用/禁用审批
- `PUT /admin/service/item/{serviceId}/status` - 启用/禁用切换
- `PUT /admin/service/items/batch/status` - 批量启用/禁用
- `DELETE /admin/service/items/batch` - 批量删除
### ✏️ ServicePriceCalendar (修改)
**修改接口:**
- `GET /admin/service/item/{serviceId}/prices` - 查询价格日历
- `PUT /admin/service/item/{serviceId}/prices` - 批量设置价格
- `PUT /admin/service/item/{serviceId}/prices/batch-status` - 批量修改可售状态
- `DELETE /admin/service/item/{serviceId}/prices` - 批量清除价格
### ✏️ ServiceTag (修改)
**修改接口:**
- `GET /admin/service/tags` - 获取管理标签列表(分页)
- `GET /admin/service/tags/all` - 获取全部标签
- `POST /admin/service/tag` - 创建管理标签
- `POST /admin/service/tag/adhoc` - 解析自定义标签
- `PUT /admin/service/tag/{tagId}` - 编辑标签
- `DELETE /admin/service/tag/{tagId}` - 删除标签
- `PUT /admin/service/item/{serviceId}/tags` - 更新服务标签
- `PUT /admin/service/items/batch/tags` - 批量打标签
### ✏️ InternalStaff (修改)
**修改接口:**
- `GET /internal/staff/{staffId}` - 获取人员简要信息
- `GET /internal/staff/batch` - 批量获取人员简要信息
- `GET /internal/staff/by-type/{staffType}` - 按人员类型查询
- `POST /internal/staff/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
- `GET /internal/staff/batch-basic` - 批量获取人员基本信息(逗号分隔ID)
- `GET /internal/staff/list-available` - 列出可用人员(用于下拉选择)
### ✏️ Staff (修改)
**修改接口:**
- `POST /admin/staff` - 创建服务人员
- `GET /admin/staff/list` - 服务人员列表
- `GET /admin/staff/{staffId}` - 服务人员详情
- `PUT /admin/staff/{staffId}` - 更新服务人员
- `DELETE /admin/staff/{staffId}` - 删除服务人员
- `POST /admin/staff/{staffId}/submit-approval` - 提交审批
- `PUT /admin/staff/{staffId}/status` - 更新状态
- `PUT /admin/staff/batch/status` - 批量更新状态
- `DELETE /admin/staff/batch` - 批量删除
### ✏️ StaffPriceCalendar (修改)
**修改接口:**
- `GET /admin/staff/type/{staffType}/prices` - 查询价格日历(按人员类型)
- `PUT /admin/staff/type/{staffType}/prices` - 批量设置价格(按人员类型)
- `PUT /admin/staff/type/{staffType}/prices/batch-status` - 批量修改调度状态(按人员类型)
- `DELETE /admin/staff/type/{staffType}/prices` - 清除价格日历(按人员类型)
### ✏️ StaffTag (修改)
**修改接口:**
- `GET /admin/staff/tags` - 预设标签列表(分页)
- `GET /admin/staff/tags/all` - 全部标签列表
- `POST /admin/staff/tag` - 创建标签
- `POST /admin/staff/tag/adhoc` - 解析自定义标签
- `PUT /admin/staff/tag/{tagId}` - 更新标签
- `DELETE /admin/staff/tag/{tagId}` - 删除标签
- `PUT /admin/staff/{staffId}/tags` - 设置人员标签
- `PUT /admin/staff/batch/tags` - 批量添加/移除标签
### ✏️ InternalSupplies (修改)
**修改接口:**
- `GET /internal/supplies/item/{suppliesId}` - 获取备品简要信息
- `GET /internal/supplies/items/batch` - 批量获取备品简要信息
- `POST /internal/supplies/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
### ✏️ Supplies (修改)
**修改接口:**
- `POST /admin/supplies/item` - 创建备品
- `GET /admin/supplies/items` - 备品列表
- `GET /admin/supplies/item/{suppliesId}` - 备品详情
- `PUT /admin/supplies/item/{suppliesId}` - 更新备品
- `DELETE /admin/supplies/item/{suppliesId}` - 删除备品
- `POST /admin/supplies/item/{suppliesId}/submit-approval` - 提交启用/禁用审批
- `PUT /admin/supplies/item/{suppliesId}/status` - 上下架切换
- `PUT /admin/supplies/items/batch/status` - 批量上下架
- `DELETE /admin/supplies/items/batch` - 批量删除
### ✏️ SuppliesTag (修改)
**修改接口:**
- `GET /admin/supplies/tags` - 获取管理标签列表(分页)
- `GET /admin/supplies/tags/all` - 获取全部标签
- `POST /admin/supplies/tag` - 创建管理标签
- `POST /admin/supplies/tag/adhoc` - 解析自定义标签
- `PUT /admin/supplies/tag/{tagId}` - 编辑标签
- `DELETE /admin/supplies/tag/{tagId}` - 删除标签
- `PUT /admin/supplies/item/{suppliesId}/tags` - 更新备品标签
- `PUT /admin/supplies/items/batch/tags` - 批量打标签
### ✏️ InternalVehicle (修改)
**修改接口:**
- `GET /internal/vehicle/model/{vehicleId}` - 获取车型简要信息
- `GET /internal/vehicle/models/batch` - 批量获取车型简要信息
- `GET /internal/vehicle/model/by-type/{vehicleType}` - 按车辆类型查询车辆
- `GET /internal/vehicle/model/by-name/{name}` - 按名称查询车辆
- `POST /internal/vehicle/approval-result` - 处理审批回调结果
- 返回类型: `` → `Result<Void>`
### ✏️ VehicleModel (修改)
**修改接口:**
- `POST /admin/vehicle/model` - 创建车型
- `GET /admin/vehicle/models` - 车型列表
- `GET /admin/vehicle/models/all` - 车型全量列表(不分页,用于下拉选择)
- `GET /admin/vehicle/model/{vehicleId}` - 车型详情
- `PUT /admin/vehicle/model/{vehicleId}` - 更新车型
- `DELETE /admin/vehicle/model/{vehicleId}` - 删除车型
- `POST /admin/vehicle/model/{vehicleId}/submit-approval` - 提交审批
- `PUT /admin/vehicle/model/{vehicleId}/status` - 更新状态
- `PUT /admin/vehicle/models/batch/status` - 批量更新状态
- `DELETE /admin/vehicle/models/batch` - 批量删除
### ✏️ VehiclePriceCalendar (修改)
**修改接口:**
- `GET /admin/vehicle/model/{vehicleId}/prices` - 查询价格日历
- `PUT /admin/vehicle/model/{vehicleId}/prices` - 批量设置价格
- `PUT /admin/vehicle/model/{vehicleId}/prices/batch-status` - 批量修改调度状态
- `DELETE /admin/vehicle/model/{vehicleId}/prices` - 清除价格日历
### ✏️ VehicleTag (修改)
**修改接口:**
- `GET /admin/vehicle/tags` - 预设标签列表(分页)
- `GET /admin/vehicle/tags/all` - 全部标签列表
- `POST /admin/vehicle/tag` - 创建标签
- `POST /admin/vehicle/tag/adhoc` - 解析自定义标签
- `PUT /admin/vehicle/tag/{tagId}` - 更新标签
- `DELETE /admin/vehicle/tag/{tagId}` - 删除标签
- `PUT /admin/vehicle/model/{vehicleId}/tags` - 设置车型标签
- `PUT /admin/vehicle/models/batch/tags` - 批量添加/移除标签
## 📦 请求/响应对象变更
- **hl-common**
- ✏️ **AdminBasicDTO** (修改5字段)
- ✏️ **DepartmentDTO** (修改3字段)
- ✏️ **ExternalContactEventDTO** (修改3字段)
- ✏️ **FileBindRefsDTO** (修改3字段)
- ✏️ **FileUnbindRefsDTO** (修改2字段)
- ✏️ **OrderPayInfoDTO** (修改12字段)
- ✏️ **PaymentResultDTO** (修改4字段)
- ✏️ **RefundResultDTO** (修改3字段)
- ✏️ **ResourceDetailDTO** (修改14字段)
- ✏️ **TravelerValidationDTO** (修改6字段)
- ✏️ **WechatDeptSyncDTO** (修改4字段)
- ✏️ **WechatMessageDTO** (修改2字段)
- ✏️ **WechatUserSyncDTO** (修改9字段)
- **产品服务**
- ✏️ **FormulaStepRequest** (修改1字段)
- ✏️ **GroupBatchCreateRequest** (修改5字段)
- ✏️ **GroupBatchDisbandRequest** (修改1字段)
- ✏️ **GroupBatchStaffRequest** (修改3字段)
- ✏️ **GroupBatchUpdateRequest** (修改7字段)
- ✏️ **NodeCreateRequest** (修改3字段)
- ✏️ **PriceCalendarRequest** (修改3字段)
- ✏️ **PricingRequest** (修改13字段)
- ✏️ **ProductStatusRequest** (修改2字段)
- ✏️ **BatchMaterialIdsRequest** (修改1字段)
- ✏️ **RefBatchBindRequest** (修改1字段)
- ✏️ **RefBatchUnbindRequest** (修改1字段)
- ✏️ **RefBindRequest** (修改5字段)
- ✏️ **RefUnbindRequest** (修改4字段)
- ✏️ **ResourceCoverQuery** (修改2字段)
- ✏️ **ResourcePriceQuery** (修改5字段)
- ✏️ **MaterialVO** (修改5字段)
- ✏️ **ResourcePriceVO** (修改5字段)
- **企微回调服务**
- ✏️ **ChatMessageVO** (修改8字段)
- **用户服务**
- ✏️ **ContactRequest** (修改2字段)
- ✏️ **CreateJobRequest** (修改4字段)
- ✏️ **FavoriteRequest** (修改1字段)
- ✏️ **FootprintRequest** (修改1字段)
- ✏️ **TravelerRequest** (修改3字段)
- ✏️ **UpdateJobRequest** (修改4字段)
- ✏️ **CustomPushRequest** (修改7字段)
- ✏️ **CustomPushResultVO** (修改3字段)
- ✏️ **EventConfigVO** (修改6字段)
- ✏️ **SendLogVO** (修改2字段)
- ✏️ **UserSimpleVO** (修改4字段)
- ✏️ **ContactVO** (修改2字段)
- ✏️ **CustomerVO** (修改1字段)
- ✏️ **LoginLogVO** (修改2字段)
- 🆕 **SysJobLogVO** (9 个字段)
- 🆕 **SysJobVO** (11 个字段)
- ✏️ **UserVO** (修改3字段)
- **素材服务**
- ✏️ **ChunkUploadCancelRequest** (修改1字段)
- ✏️ **ChunkUploadCompleteRequest** (修改1字段)
- ✏️ **ChunkUploadInitRequest** (修改5字段)
- ✏️ **FileBatchIdsRequest** (修改1字段)
- ✏️ **FileUploadConfirmRequest** (修改1字段)
- ✏️ **FileUploadTokenRequest** (修改5字段)
- ✏️ **ChunkUploadInitVO** (修改4字段)
- ✏️ **ChunkUploadPartVO** (修改1字段)
- ✏️ **FileUploadTokenVO** (修改14字段)
- ✏️ **FileVO** (修改13字段)
- **订单服务**
- ✏️ **AdminCreateOrderRequest** (修改2字段)
- ✏️ **AdminRefundReviewRequest** (修改2字段)
- ✏️ **AdminUpdateOrderRequest** (修改1字段)
- ✏️ **CreateWorkOrderRequest** (修改3字段)
- ✏️ **EarlyBirdPlanRequest** (修改2字段)
- ✏️ **MpOrderQueryRequest** (修改1字段)
- ✏️ **MpUpdateOrderRequest** (修改1字段)
- ✏️ **RefundApplyRequest** (修改2字段)
- ✏️ **RefundPolicyRequest** (修改2字段)
- ✏️ **UpdateOrderStatusRequest** (修改1字段)
- ✏️ **WorkOrderVO** (修改6字段)
- **资源服务**
- ✏️ **RestaurantCreateRequest** (修改1字段)
- ✏️ **RestaurantQueryRequest** (修改1字段)
- ✏️ **RestaurantUpdateRequest** (修改1字段)
- ✏️ **RestaurantListVO** (修改1字段)
- ✏️ **RestaurantVO** (修改1字段)
#### hl-common
### ✏️ AdminBasicDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `adminId` | `Long` | `Long` 管理员ID |
| `username` | `String` | `String` 用户名 |
| `avatarUrl` | `String` | `String` 头像URL |
| `wechatUserid` | `String` | `String` 企微用户ID |
| `wechatName` | `String` | `String` 企微用户名称 |
### ✏️ DepartmentDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `deptId` | `Long` | `Long` 部门ID |
| `deptName` | `String` | `String` 部门名称 |
| `parentId` | `Long` | `Long` 上级部门ID |
### ✏️ ExternalContactEventDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `changeType` | `String` | `String` 变更类型: add_external_contact/del_follow_user/del_external_contact/edit_external_contact |
| `userId` | `String` | `String` 员工企微用户ID |
| `externalUserId` | `String` | `String` 外部联系人ID |
### ✏️ FileBindRefsDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `bizType` | `String` | `String` 业务类型 |
| `bizId` | `Long` | `Long` 业务ID |
| `fileIds` | `List<Long>` | `List<Long>` 文件ID列表 |
### ✏️ FileUnbindRefsDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `bizType` | `String` | `String` 业务类型 |
| `bizId` | `Long` | `Long` 业务ID |
### ✏️ OrderPayInfoDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `orderId` | `Long` | `Long` 订单ID |
| `orderNo` | `String` | `String` 订单编号 |
| `userId` | `Long` | `Long` 用户ID |
| `mchId` | `String` | `String` 商户号 |
| `totalPrice` | `BigDecimal` | `BigDecimal` 总价 |
| `discountAmount` | `BigDecimal` | `BigDecimal` 优惠金额 |
| `depositAmount` | `BigDecimal` | `BigDecimal` 定金金额 |
| `paidAmount` | `BigDecimal` | `BigDecimal` 已支付金额 |
| `paymentMode` | `String` | `String` 支付模式: FULL=全款, DEPOSIT=定金+尾款 |
| `status` | `String` | `String` 订单状态 |
| `productName` | `String` | `String` 产品名称 |
| `isBooking` | `Boolean` | `Boolean` 是否预定产品: true=预定(定金可不填出行人), false=非预定(支付前必须填出行人) |
### ✏️ PaymentResultDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `orderId` | `Long` | `Long` 订单ID |
| `payType` | `String` | `String` 支付类型: FULL=全款, DEPOSIT=定金, BALANCE=尾款 |
| `paidAmount` | `BigDecimal` | `BigDecimal` 支付金额 |
| `transactionIdWx` | `String` | `String` 微信支付交易号 |
### ✏️ RefundResultDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `orderId` | `Long` | `Long` 订单ID |
| `refundAmount` | `BigDecimal` | `BigDecimal` 退款金额 |
| `refundIdWx` | `String` | `String` 微信退款单号 |
### ✏️ ResourceDetailDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `resourceId` | `String` | `String` 资源ID |
| `resourceType` | `String` | `String` 资源类型: SCENIC_SPOT/HOTEL/RESTAURANT/ACTIVITY |
| `name` | `String` | `String` 资源名称 |
| `subtitle` | `String` | `String` 副标题 |
| `description` | `String` | `String` 简介/描述 |
| `cover` | `String` | `String` 封面图URL |
| `images` | `List<String>` | `List<String>` 图片URL列表轮播图 |
| `address` | `String` | `String` 地址 |
| `longitude` | `BigDecimal` | `BigDecimal` 经度 |
| `latitude` | `BigDecimal` | `BigDecimal` 纬度 |
| `tags` | `List<String>` | `List<String>` 标签列表 |
| `featureIntro` | `String` | `String` 图文详情featureIntro JSON |
| `rating` | `BigDecimal` | `BigDecimal` 评分 |
| `city` | `String` | `String` 所在城市 |
### ✏️ TravelerValidationDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `orderId` | `Long` | `Long` 订单ID |
| `requiredCount` | `Integer` | `Integer` 需要的出行人数量 |
| `actualCount` | `Integer` | `Integer` 实际填写的出行人数量 |
| `isComplete` | `Boolean` | `Boolean` 是否完整(数量足够且信息完整) |
| `incompleteTravelerIds` | `List<Long>` | `List<Long>` 信息不完整的出行人ID列表 |
| `message` | `String` | `String` 验证消息 |
### ✏️ WechatDeptSyncDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `id` | `Long` | `Long` 部门ID |
| `name` | `String` | `String` 部门名称 |
| `parentId` | `Long` | `Long` 上级部门ID |
| `order` | `Integer` | `Integer` 排序值 |
### ✏️ WechatMessageDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `toUserIds` | `List<String>` | `List<String>` 接收用户ID列表 |
| `content` | `String` | `String` 消息内容 |
### ✏️ WechatUserSyncDTO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `userid` | `String` | `String` 企微用户ID |
| `name` | `String` | `String` 用户名称 |
| `department` | `String` | `String` 所属部门ID逗号分隔 |
| `position` | `String` | `String` 职位 |
| `mobile` | `String` | `String` 手机号 |
| `gender` | `Integer` | `Integer` 性别: 1=男, 2=女, 0=未定义 |
| `email` | `String` | `String` 邮箱 |
| `avatar` | `String` | `String` 头像URL |
| `status` | `Integer` | `Integer` 状态: 1=已激活, 2=已禁用, 4=未激活, 5=退出企业 |
#### 产品服务
### ✏️ FormulaStepRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `expression` | `String` 表达式 | `String` Aviator表达式支持数学运算、条件判断、内置函数;可引用前置步骤的输出变量和公式变量表中的变量 |
### ✏️ GroupBatchCreateRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `batchName` | `String` batch name | `String` 批次名称 |
| `departureDate` | `LocalDate` departure date | `LocalDate` 出发日期 |
| `enrollmentDeadline` | `LocalDate` enrollment deadline | `LocalDate` 报名截止日期,必须早于出发日期 |
| `maxParticipants` | `int` max participants | `int` 最大参团人数(报名人数达到上限后自动关闭报名) |
| `remark` | `String` remark | `String` 备注说明 |
### ✏️ GroupBatchDisbandRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `reason` | `String` disband reason | `String` 解散原因(如:报名人数不足、行程调整等) |
### ✏️ GroupBatchStaffRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `staffId` | `Long` staff ID (from resource-service) | `Long` 人员ID来自资源服务的人员库 |
| `staffRole` | `String` role in this batch: LEADER/PHOTOGRAPHER/DRIVER/OTHER | `String` 在该批次中的角色LEADER(领队)/PHOTOGRAPHER(摄影师)/DRIVER(司机)/OTHER(其他) |
| `remark` | `String` remark | `String` 备注(如:主导游、备用摄影师等) |
### ✏️ GroupBatchUpdateRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `batchName` | `String` batch name | `String` 批次名称 |
| `departureDate` | `LocalDate` departure date | `LocalDate` 出发日期 |
| `enrollmentDeadline` | `LocalDate` enrollment deadline | `LocalDate` 报名截止日期 |
| `minParticipants` | `Integer` min participants | `Integer` 最低成团人数0=不限制) |
| `maxParticipants` | `Integer` max participants | `Integer` 最大参团人数(不能低于已报名人数) |
| `remark` | `String` remark | `String` 备注说明 |
| `sortOrder` | `Integer` sort order | `Integer` 排序序号 |
### ✏️ NodeCreateRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `resourceType` | `String` 关联资源类型SCENIC_SPOT/HOTEL/RESTAURANT/ACTIVITY/VEHICLE/SERVICE | `String` 关联资源类型关联后可从资源服务获取价格参与成本计算SCENIC/HOTEL/RESTAURANT/ACTIVITY/VEHICLE/SERVICE |
| `resourceId` | `String` 关联资源ID | `String` 关联资源ID来自资源服务,关联后节点名称和图片可自动同步 |
| `familyIds` | `List<String>` 所属家庭ID列表定制产品按家庭分配 | `List<String>` 所属家庭ID列表仅CUSTOM定制产品使用,实现按家庭分配行程节点 |
### ✏️ PriceCalendarRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `costAutoCalc` | `Boolean` 是否自动计算成本 | `Boolean` 是否自动计算成本true时重新测算会自动更新此日期的价格 |
| `stock` | `Integer` 库存数量 | `Integer` 库存数量CORE/GROUP按人头扣减,CUSTOM/ROUTE按单扣减 |
| `status` | `String` 状态OPEN=开放 CLOSED=关闭 | `String` 状态OPEN=开放预订 CLOSED=关闭(不可预订) |
### ✏️ PricingRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `pricingMode` | `String` 定价模式AUTO=自动计算 MANUAL=手动定价 CUSTOM=定制定价 | `String` 定价模式AUTO=根据行程资源价格自动计算 MANUAL=手动在价格日历设置每日价格 CUSTOM=定制产品整单定价 |
| `profitMode` | `String` 利润模式FIXED=固定金额 PERCENT=百分比 | `String` 利润模式AUTO模式下生效FIXED=在成本基础上加固定金额 PERCENT=在成本基础上按百分比加价 |
| `childWithBed` | `BigDecimal` 儿童占床价 | `BigDecimal` 儿童加床费childNeedBed=true时额外加收的费用 |
| `childNoBed` | `BigDecimal` 儿童不占床价 | `BigDecimal` 儿童不占床价(暂未使用,预留字段) |
| `babyPrice` | `BigDecimal` 婴儿价 | `BigDecimal` 婴儿固定价格(不随日期变化) |
| `childDiscountPercent` | `BigDecimal` 儿童折扣百分比 | `BigDecimal` 小童折扣百分比(小童价=儿童价×此百分比/100,如70表示打7折 |
| `customTotalPrice` | `BigDecimal` 定制产品总价CUSTOM模式下使用 | `BigDecimal` 定制产品总价CUSTOM定价模式下使用,代表整单总价 |
| `minGroupSize` | `Integer` 最小成团人数 | `Integer` 最小成团人数CORE/GROUP产品用,影响均摊成本计算 |
| `maxGroupSize` | `Integer` 最大成团人数 | `Integer` 最大成团人数CORE/GROUP产品用 |
| `paymentType` | `String` 支付方式FULL=全款 DEPOSIT=定金+尾款 | `String` 支付方式FULL=全款支付 DEPOSIT=定金+尾款分期支付 |
| `depositRatio` | `Integer` 定金比例(百分比) | `Integer` 定金比例百分比,如30代表30%。与depositAmount二选一,优先使用比例 |
| `depositAmount` | `BigDecimal` 定金金额 | `BigDecimal` 定金金额固定金额,与depositRatio二选一 |
| `balanceDueDays` | `Integer` 尾款支付截止天数出发前N天 | `Integer` 尾款支付截止天数出发前N天必须支付尾款,超时可能取消订单 |
### ✏️ ProductStatusRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `status` | `String` 目标状态DRAFT/PENDING_REVIEW/REVIEWED/REJECTED/PUBLISHED/UNPUBLISHED/COMPLETED | `String` 目标状态。核心/小蒙马DRAFT/PENDING_REVIEW/REVIEWED/REJECTED/PUBLISHED/UNPUBLISHED;定制产品COMPLETED |
| `reason` | `String` 状态变更原因(驳回时必填) | `String` 状态变更原因(驳回时必填;上架/下架审批时可填) |
### ✏️ BatchMaterialIdsRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `materialIds` | `List<Long>` | `List<Long>` 素材ID列表 |
### ✏️ RefBatchBindRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `refs` | `List<RefBindRequest>` | `List<RefBindRequest>` 引用绑定列表 |
### ✏️ RefBatchUnbindRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `refs` | `List<RefUnbindRequest>` | `List<RefUnbindRequest>` 引用解绑列表 |
### ✏️ RefBindRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `materialId` | `Long` | `Long` 素材ID |
| `bizType` | `String` | `String` 业务类型 |
| `bizId` | `Long` | `Long` 业务ID |
| `bizName` | `String` | `String` 业务名称 |
| `usageType` | `String` | `String` 用途类型 |
### ✏️ RefUnbindRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `materialId` | `Long` | `Long` 素材ID |
| `bizType` | `String` | `String` 业务类型 |
| `bizId` | `Long` | `Long` 业务ID |
| `usageType` | `String` | `String` 用途类型 |
### ✏️ ResourceCoverQuery (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `resourceType` | `String` | `String` 资源类型 |
| `resourceId` | `String` | `String` 资源ID |
### ✏️ ResourcePriceQuery (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `resourceIds` | `List<Long>` | `List<Long>` 资源ID列表 |
| `staffTypes` | `List<String>` | `List<String>` 人员类型列表 |
| `startDate` | `LocalDate` | `LocalDate` 开始日期 |
| `endDate` | `LocalDate` | `LocalDate` 结束日期 |
| `subType` | `String` | `String` 资源子类型(如酒店房型ID、车辆类别) |
### ✏️ MaterialVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `materialId` | `String` | `String` 素材ID |
| `ossUrl` | `String` | `String` OSS访问URL |
| `thumbnailUrl` | `String` | `String` 缩略图URL |
| `materialName` | `String` | `String` 素材名称 |
| `fileType` | `String` | `String` 文件类型 |
### ✏️ ResourcePriceVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `resourceId` | `Long` | `Long` 资源ID |
| `staffType` | `String` | `String` 人员类型 |
| `date` | `LocalDate` | `LocalDate` 日期 |
| `price` | `BigDecimal` | `BigDecimal` 价格 |
| `resourceName` | `String` | `String` 资源名称 |
#### 企微回调服务
### ✏️ ChatMessageVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `msgId` | `String` | `String` 消息ID |
| `fromUser` | `String` | `String` 发送人ID |
| `fromUserName` | `String` | `String` 发送人姓名 |
| `fromUserAvatar` | `String` | `String` 发送人头像 |
| `roomId` | `String` | `String` 群聊ID |
| `msgTime` | `Long` | `Long` 消息时间戳 |
| `msgType` | `String` | `String` 消息类型 |
| `content` | `String` | `String` 消息内容 |
#### 用户服务
### ✏️ ContactRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `channelType` | `String` 渠道类型ABOUT=关于我们 ONLINE_CS=在线客服 PHONE=电话咨询 | `String` 渠道类型,关联字典contact_channel_typeABOUT=关于我们, ONLINE_CS=在线客服, PHONE=电话咨询 |
| `status` | `Integer` 状态0=下线 1=上线 | `Integer` 状态,关联字典common_status0=下线, 1=上线 |
### ✏️ CreateJobRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `jobGroup` | `String` 任务分组 | `String` 任务分组,字典类型job_groupDEFAULT=默认分组, SYSTEM=系统任务, WECHAT=企微同步, INSURANCE=保险同步) |
| `invokeTarget` | `String` 调用目标Bean名称.方法名) | `String` 调用目标Bean名称.方法名),方法必须是无参公开方法 |
| `cronExpression` | `String` Cron表达式 | `String` Cron表达式,标准6位秒 分 时 日 月 周) |
| `misfirePolicy` | `String` 计划执行策略0=默认 1=立即触发 2=触发一次 3=不触发 | `String` 计划执行策略,字典类型job_misfire_policyDEFAULT=默认策略, FIRE_ONCE=立即触发一次, DO_NOTHING=不触发) |
### ✏️ FavoriteRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `targetType` | `String` 收藏类型 | `String` 收藏类型,关联字典favorite_resource_type |
### ✏️ FootprintRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `resourceType` | `String` 资源类型 | `String` 资源类型,关联字典footprint_resource_type |
### ✏️ TravelerRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `travelerType` | `String` 出行人类型(无需传入,后端根据出生日期自动判断) | `String` 出行人类型,关联字典traveler_typeADULT=成人, CHILD=儿童, INFANT=婴儿无需传入,后端根据birthday自动判断 |
| `idCardType` | `String` 证件类型ID_CARD=身份证 PASSPORT=护照 | `String` 证件类型,关联字典id_card_typeID_CARD=身份证, PASSPORT=护照 |
| `gender` | `Integer` 性别0=女 1=男 | `Integer` 性别,关联字典gender0=女, 1=男 |
### ✏️ UpdateJobRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `jobGroup` | `String` 任务分组 | `String` 任务分组,字典类型job_groupDEFAULT=默认分组, SYSTEM=系统任务, WECHAT=企微同步, INSURANCE=保险同步) |
| `invokeTarget` | `String` 调用目标Bean名称.方法名) | `String` 调用目标Bean名称.方法名),方法必须是无参公开方法 |
| `cronExpression` | `String` Cron表达式 | `String` Cron表达式,标准6位秒 分 时 日 月 周) |
| `misfirePolicy` | `String` 计划执行策略0=默认 1=立即触发 2=触发一次 3=不触发 | `String` 计划执行策略,字典类型job_misfire_policyDEFAULT=默认策略, FIRE_ONCE=立即触发一次, DO_NOTHING=不触发) |
### ✏️ CustomPushRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `title` | `String` | `String` 推送标题 |
| `content` | `String` | `String` 推送内容 |
| `channel` | `String` | `String` 推送通道: INAPP/SMS/WECHAT_WORK |
| `targetType` | `String` | `String` 目标类型: ALL_USERS/SPECIFIC_USERS |
| `userIds` | `List<Long>` | `List<Long>` 目标用户ID列表(目标类型为SPECIFIC_USERS时必填) |
| `categoryCode` | `String` | `String` 消息分类编码,默认SYSTEM |
| `link` | `String` | `String` 跳转链接(站内信时使用) |
### ✏️ CustomPushResultVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `totalCount` | `int` | `int` 推送总数 |
| `successCount` | `int` | `int` 成功数 |
| `failCount` | `int` | `int` 失败数 |
### ✏️ EventConfigVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `inappEnabled` | `Integer` 站内信开关 | `Integer` 站内信开关0=关闭, 1=开启) |
| `smsEnabled` | `Integer` 短信开关 | `Integer` 短信开关0=关闭, 1=开启) |
| `miniappEnabled` | `Integer` 小程序订阅消息开关 | `Integer` 小程序订阅消息开关0=关闭, 1=开启) |
| `oaEnabled` | `Integer` 公众号模板消息开关 | `Integer` 公众号模板消息开关0=关闭, 1=开启) |
| `weworkEnabled` | `Integer` 企微通知开关 | `Integer` 企微通知开关0=关闭, 1=开启) |
| `weworkReceiverType` | `String` 企微接收人类型 | `String` 企微接收人类型ROLE=按角色, DEPT=按部门, SPECIFIC=指定人员) |
### ✏️ SendLogVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `channel` | `String` 通道: INAPP/SMS/MINIAPP/OA/WEWORK | `String` 通道,关联字典notification_channelINAPP=站内信, SMS=短信, MINIAPP=小程序订阅, OA=公众号模板, WEWORK=企业微信 |
| `status` | `Integer` 发送状态: 0成功 1失败 2跳过 | `Integer` 发送状态,关联字典notification_send_status0=成功, 1=失败, 2=跳过 |
### ✏️ UserSimpleVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `id` | `Long` | `Long` 用户ID |
| `realName` | `String` | `String` 真实姓名 |
| `phone` | `String` | `String` 手机号 |
| `avatarUrl` | `String` | `String` 头像URL |
### ✏️ ContactVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `channelType` | `String` 渠道类型ABOUT=关于我们 ONLINE_CS=在线客服 PHONE=电话咨询 | `String` 渠道类型,关联字典contact_channel_typeABOUT=关于我们, ONLINE_CS=在线客服, PHONE=电话咨询 |
| `status` | `Integer` 状态0=下线 1=上线 | `Integer` 状态,关联字典common_status0=下线, 1=上线 |
### ✏️ CustomerVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `status` | `String` 状态ACTIVE=正常 DISABLED=禁用 | `String` 状态,关联字典user_statusACTIVE=正常, BANNED=已封禁 |
### ✏️ LoginLogVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `loginMethod` | `String` 登录方式PASSWORD=密码 WECHAT=企微扫码 TWO_FA=二次验证 | `String` 登录方式,关联字典login_methodPASSWORD=密码登录, WECHAT_QR=企微扫码登录, TWO_FA=二次验证登录 |
| `status` | `String` 登录状态SUCCESS=成功 FAILED=失败 | `String` 登录状态,关联字典login_statusSUCCESS=成功, FAILED=失败 |
### 🆕 SysJobLogVO (新增)
| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `jobLogId` | `Long` | 日志ID |
| `jobId` | `Long` | 任务ID |
| `jobName` | `String` | 任务名称 |
| `invokeTarget` | `String` | 调用目标 |
| `status` | `String` | 执行状态 |
| `message` | `String` | 执行结果/异常信息 |
| `startTime` | `LocalDateTime` | 开始时间 |
| `endTime` | `LocalDateTime` | 结束时间 |
| `createdAt` | `LocalDateTime` | 创建时间 |
### 🆕 SysJobVO (新增)
| 字段 | 类型 | 说明 |
| --- | --- | --- |
| `jobId` | `Long` | 任务ID |
| `jobName` | `String` | 任务名称 |
| `jobGroup` | `String` | 任务分组 |
| `invokeTarget` | `String` | 调用目标Bean名称.方法名) |
| `cronExpression` | `String` | Cron表达式 |
| `misfirePolicy` | `String` | 计划执行策略 |
| `concurrent` | `Boolean` | 是否允许并发执行 |
| `status` | `String` | 任务状态 |
| `remark` | `String` | 备注 |
| `createdAt` | `LocalDateTime` | 创建时间 |
| `updatedAt` | `LocalDateTime` | 更新时间 |
### ✏️ UserVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `status` | `String` 状态ACTIVE=正常 DISABLED=禁用 | `String` 状态,关联字典user_statusACTIVE=正常, BANNED=已封禁 |
| `idCardType` | `String` 证件类型ID_CARD=身份证 PASSPORT=护照 | `String` 证件类型,关联字典id_card_typeID_CARD=身份证, PASSPORT=护照 |
| `gender` | `Integer` 性别0=女 1=男 | `Integer` 性别,关联字典gender0=女, 1=男 |
#### 素材服务
### ✏️ ChunkUploadCancelRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `uploadId` | `String` | `String` 上传ID |
### ✏️ ChunkUploadCompleteRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `uploadId` | `String` | `String` 上传ID |
### ✏️ ChunkUploadInitRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `filename` | `String` | `String` 文件名 |
| `fileSize` | `Long` | `Long` 文件大小(字节) |
| `contentType` | `String` | `String` 文件MIME类型 |
| `groupKey` | `String` | `String` 分组标识 |
| `fileHash` | `String` | `String` 文件哈希值 |
### ✏️ FileBatchIdsRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `fileIds` | `List<Long>` | `List<Long>` 文件ID列表 |
### ✏️ FileUploadConfirmRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `fileId` | `String` | `String` 文件ID |
### ✏️ FileUploadTokenRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `fileName` | `String` | `String` 文件名 |
| `fileSize` | `Long` | `Long` 文件大小(字节) |
| `fileHash` | `String` | `String` 文件哈希值 |
| `groupKey` | `String` | `String` 分组标识 |
| `forcePresigned` | `boolean` | `boolean` 是否强制使用预签名URL |
### ✏️ ChunkUploadInitVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `uploadId` | `String` | `String` 上传ID |
| `chunkSize` | `int` | `int` 分片大小(字节) |
| `fileId` | `String` | `String` 文件ID |
| `ossKey` | `String` | `String` OSS对象Key |
### ✏️ ChunkUploadPartVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `etag` | `String` | `String` 分片ETag标识 |
### ✏️ FileUploadTokenVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `fileId` | `String` | `String` 文件ID |
| `contentType` | `String` | `String` 文件MIME类型 |
| `uploadMode` | `String` | `String` 上传模式 |
| `presignedUrl` | `String` | `String` 预签名上传URL |
| `ossKey` | `String` | `String` OSS对象Key |
| `expireAt` | `LocalDateTime` | `LocalDateTime` 过期时间 |
| `stsToken` | `StsTokenInfo` | `StsTokenInfo` STS临时凭证 |
| `bucket` | `String` | `String` OSS存储桶名称 |
| `region` | `String` | `String` OSS区域 |
| `file` | `FileVO` | `FileVO` 文件信息(秒传时返回) |
| `accessKeyId` | `String` | `String` 访问密钥ID |
| `accessKeySecret` | `String` | `String` 访问密钥Secret |
| `securityToken` | `String` | `String` 安全令牌 |
| `expiration` | `String` | `String` 过期时间 |
### ✏️ FileVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `fileId` | `String` | `String` 文件ID |
| `fileName` | `String` | `String` 文件名 |
| `fileType` | `String` | `String` 文件类型 |
| `mimeType` | `String` | `String` MIME类型 |
| `fileSize` | `Long` | `Long` 文件大小(字节) |
| `fileHash` | `String` | `String` 文件哈希值 |
| `ossUrl` | `String` | `String` OSS访问URL |
| `thumbnailUrl` | `String` | `String` 缩略图URL |
| `previewUrl` | `String` | `String` 预览URL |
| `groupKey` | `String` | `String` 分组标识 |
| `status` | `String` | `String` 文件状态 |
| `refCount` | `Integer` | `Integer` 引用次数 |
| `createdAt` | `LocalDateTime` | `LocalDateTime` 创建时间 |
#### 订单服务
### ✏️ AdminCreateOrderRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `userPhone` | `String` 用户手机号可选,用于关联C端用户 | `String` 用户手机号可选,用于关联C端用户。如匹配到已注册用户则自动绑定订单 |
| `expiryMinutes` | `Integer` 支付时限(分钟),不传则使用全局默认值 | `Integer` 支付时限(分钟),不传则使用全局默认值。超时未支付订单自动取消 |
### ✏️ AdminRefundReviewRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `action` | `String` 审批结果APPROVE/REJECT | `String` 审批结果APPROVE=通过自动调起微信退款、REJECT=拒绝(用户可发起申诉) |
| `actualAmount` | `BigDecimal` 实际退款金额(审批通过时可调整) | `BigDecimal` 实际退款金额(审批通过时可调整,不传则使用申请金额)。不能超过订单已付金额 |
### ✏️ AdminUpdateOrderRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `mchId` | `String` 商户号 | `String` 商户号(微信支付商户号,多商户场景使用) |
### ✏️ CreateWorkOrderRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `type` | `String` 工单类型: ROOM_CHANGE/ROOM_ADD/CHECKOUT_CHANGE/HOTEL_ISSUE/VEHICLE_CHANGE/SCENIC_ADD/SCENIC_REMOVE/OTHER | `String` 工单类型: ROOM_CHANGE(换房)/ROOM_ADD(加房)/CHECKOUT_CHANGE(改退房日期)/ |
| `priority` | `String` 优先级: URGENT/NORMAL | `String` 优先级: URGENT(紧急,如当天出发需处理)/NORMAL(普通) |
| `costDifference` | `BigDecimal` 差价(正数=加价, 负数=退费) | `BigDecimal` 差价(正数=客户需补差价, 负数=需退费给客户) |
### ✏️ EarlyBirdPlanRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `minPeople` | `Integer` 最低人数 | `Integer` 最低出行人数(含成人+儿童),订单人数>=此值才能享受优惠 |
| `discountAmount` | `BigDecimal` 优惠金额 | `BigDecimal` 优惠金额(从订单总价中扣减的固定金额) |
### ✏️ MpOrderQueryRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `status` | `String` 订单状态 | `String` 订单状态不传则查全部。可选值PENDING_PAY/DEPOSIT_PAID/PAID/CONFIRMED/PENDING_BALANCE/PENDING_DEPARTURE/TRAVELLING/COMPLETED/AFTER_SALE/REFUNDING/REFUNDED/CANCELLED |
### ✏️ MpUpdateOrderRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `departureDate` | `LocalDate` 出发日期 | `LocalDate` 出发日期(修改出发日期会触发价格重算) |
### ✏️ RefundApplyRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `refundType` | `String` 退款类型字典refund_type | `String` 退款类型FULL=全额退款、PARTIAL=部分退款 |
| `reasonId` | `Long` 退款原因ID | `Long` 退款原因ID从退款原因列表接口获取 |
### ✏️ RefundPolicyRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `minDays` | `Integer` 距出发最少天数 | `Integer` 距出发最少天数含当天。例如minDays=7表示出发前7天及以上适用此规则 |
| `refundRatio` | `Integer` 退款比例(百分比) | `Integer` 退款比例百分比,0-100。例如80表示退已付金额的80% |
### ✏️ UpdateOrderStatusRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `status` | `String` 目标状态字典order_status | `String` 目标状态。可选值PENDING_PAY(待支付)/DEPOSIT_PAID(已付定金)/PAID(已全额支付)/ |
### ✏️ WorkOrderVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `logId` | `String` | `String` 日志ID |
| `action` | `String` | `String` 操作动作 |
| `actionLabel` | `String` | `String` 操作动作标签 |
| `content` | `String` | `String` 操作内容 |
| `operatorName` | `String` | `String` 操作人姓名 |
| `createdAt` | `LocalDateTime` | `LocalDateTime` 操作时间 |
#### 资源服务
### ✏️ RestaurantCreateRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `cityName` | `String` 城市标签 | `String` 城市名称(纯文本输入) |
### ✏️ RestaurantQueryRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `cityName` | `String` 城市标签 | `String` 城市名称筛选(纯文本) |
### ✏️ RestaurantUpdateRequest (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `cityName` | `String` 城市标签 | `String` 城市名称(纯文本输入) |
### ✏️ RestaurantListVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `cityName` | `String` 城市标签 | `String` 城市名称(纯文本) |
### ✏️ RestaurantVO (修改)
**修改字段:**
| 字段 | 变更前 | 变更后 |
| --- | --- | --- |
| `cityName` | `String` 城市标签 | `String` 城市名称(纯文本) |
## 🗄️ 数据库变更
### `add_customer_service_role.sql` (新增)
```sql
-- 新增客服角色
-- 权限:查看全部订单、全部产品(含定制产品)、配置保险、配置合同、查看素材
-- 1. 创建角色
INSERT INTO sys_role (role_id, role_name, role_key, sort_order, status)
VALUES (8, '客服', 'CUSTOMER_SERVICE', 8, 'ACTIVE');
-- 2. 分配菜单权限
INSERT INTO sys_role_menu (role_id, menu_id) VALUES
-- 订单管理(查看,不含创建)
(8, 700), -- 订单管理(目录)
(8, 710), -- 订单列表
(8, 730), -- 订单详情
(8, 740), -- 早鸟优惠
(8, 750), -- 工单管理
-- 退款管理(查看)
(8, 6001), -- 退款管理(目录)
(8, 6010), -- 退款申请
(8, 6020), -- 退款政策
(8, 6030), -- 退款原因
-- 产品管理(查看全部,含定制产品,不含增删改按钮)
(8, 500), -- 产品管理(目录)
(8, 510), -- 产品列表
(8, 520), -- 产品线管理
(8, 530), -- 团期管理
-- 保险管理(配置)
(8, 800), -- 保险管理(目录)
(8, 810), -- 保险产品
(8, 820), -- 保险订单
(8, 830), -- 保险方案
-- 合同管理(配置)
(8, 850), -- 合同管理(目录)
(8, 851), -- 合同列表
(8, 852), -- 补充约定模板
-- 素材库(查看)
(8, 1890000000000000100); -- 素材库
```
### `dict_data_seed.sql` (修改)
```sql
-- Dict Types (9 types)
(7, '任务日志状态', 'job_log_status', 'BASE', 'ACTIVE', NULL, NOW(), NOW()),
(8, '任务状态', 'job_status', 'BASE', 'ACTIVE', NULL, NOW(), NOW()),
(9, '任务分组', 'job_group', 'BASE', 'ACTIVE', NULL, NOW(), NOW());
-- job_status
INSERT IGNORE INTO sys_dict_data (dict_data_id, dict_type, dict_label, dict_value, sort_order, status, remark, created_at, updated_at)
VALUES
(801, 'job_status', '启用', 'ACTIVE', 1, 'ACTIVE', 'success', NOW(), NOW()),
(802, 'job_status', '已暂停', 'PAUSED', 2, 'ACTIVE', 'info', NOW(), NOW());
-- job_group
INSERT IGNORE INTO sys_dict_data (dict_data_id, dict_type, dict_label, dict_value, sort_order, status, remark, created_at, updated_at)
VALUES
(901, 'job_group', '默认分组', 'DEFAULT', 1, 'ACTIVE', '', NOW(), NOW()),
(902, 'job_group', '系统任务', 'SYSTEM', 2, 'ACTIVE', 'primary', NOW(), NOW()),
(903, 'job_group', '企微同步', 'WECHAT', 3, 'ACTIVE', 'success', NOW(), NOW()),
(904, 'job_group', '保险同步', 'INSURANCE', 4, 'ACTIVE', 'warning', NOW(), NOW());
```
### `dict_fix_frontend.sql` (新增)
```sql
-- ============================================================
-- 前端缺失的字典类型和字典数据补齐
-- 对比前端 hl-ui 代码 vs 后端 sys_dict_type 表
-- ============================================================
-- 1. cities - 城市树形字典,MobilePreview/useLocation用
INSERT IGNORE INTO sys_dict_type (dict_type_id, dict_name, dict_type, category, status)
VALUES (1900000001, '城市', 'cities', 'BASE', 'ACTIVE');
INSERT IGNORE INTO sys_dict_data (dict_data_id, dict_type, dict_label, dict_value, sort_order, status)
VALUES
(1900100001, 'cities', '海拉尔', 'hailar', 1, 'ACTIVE'),
(1900100002, 'cities', '满洲里', 'manzhouli', 2, 'ACTIVE'),
(1900100003, 'cities', '额尔古纳', 'eergu', 3, 'ACTIVE'),
(1900100004, 'cities', '根河', 'genhe', 4, 'ACTIVE'),
(1900100005, 'cities', '牙克石', 'yakeshi', 5, 'ACTIVE'),
(1900100006, 'cities', '扎兰屯', 'zhalantun', 6, 'ACTIVE'),
(1900100007, 'cities', '阿尔山', 'aershan', 7, 'ACTIVE'),
(1900100008, 'cities', '室韦', 'shiwei', 8, 'ACTIVE'),
(1900100009, 'cities', '恩和', 'enhe', 9, 'ACTIVE'),
(1900100010, 'cities', '黑山头', 'heishantou', 10, 'ACTIVE'),
(1900100011, 'cities', '陈巴尔虎旗', 'chenbaerhu', 11, 'ACTIVE'),
(1900100012, 'cities', '新巴尔虎左旗', 'xinbaerhuzuo', 12, 'ACTIVE'),
(1900100013, 'cities', '新巴尔虎右旗', 'xinbaerhuyou', 13, 'ACTIVE'),
(1900100014, 'cities', '鄂温克旗', 'ewenke', 14, 'ACTIVE'),
(1900100015, 'cities', '莫尔道嘎', 'moerdaoga', 15, 'ACTIVE');
-- 2. city - 城市筛选(产品行程资源面板用)
INSERT IGNORE INTO sys_dict_type (dict_type_id, dict_name, dict_type, category, status)
VALUES (1900000002, '城市筛选', 'city', 'BASE', 'ACTIVE');
INSERT IGNORE INTO sys_dict_data (dict_data_id, dict_type, dict_label, dict_value, sort_order, status)
VALUES
(1900200001, 'city', '海拉尔', 'hailar', 1, 'ACTIVE'),
(1900200002, 'city', '满洲里', 'manzhouli', 2, 'ACTIVE'),
(1900200003, 'city', '额尔古纳', 'eergu', 3, 'ACTIVE'),
(1900200004, 'city', '根河', 'genhe', 4, 'ACTIVE'),
(1900200005, 'city', '阿尔山', 'aershan', 5, 'ACTIVE'),
(1900200006, 'city', '室韦', 'shiwei', 6, 'ACTIVE'),
(1900200007, 'city', '恩和', 'enhe', 7, 'ACTIVE'),
(1900200008, 'city', '黑山头', 'heishantou', 8, 'ACTIVE');
-- 3. city_label - 城市标签(餐厅列表筛选用)
INSERT IGNORE INTO sys_dict_type (dict_type_id, dict_name, dict_type, category, status)
VALUES (1900000003, '城市标签', 'city_label', 'BASE', 'ACTIVE');
INSERT IGNORE INTO sys_dict_data (dict_data_id, dict_type, dict_label, dict_value, sort_order, status)
VALUES
(1900300001, 'city_label', '海拉尔', 'hailar', 1, 'ACTIVE'),
(1900300002, 'city_label', '满洲里', 'manzhouli', 2, 'ACTIVE'),
(1900300003, 'city_label', '额尔古纳', 'eergu', 3, 'ACTIVE'),
(1900300004, 'city_label', '根河', 'genhe', 4, 'ACTIVE'),
(1900300005, 'city_label', '阿尔山', 'aershan', 5, 'ACTIVE'),
(1900300006, 'city_label', '室韦', 'shiwei', 6, 'ACTIVE'),
(1900300007, 'city_label', '恩和', 'enhe', 7, 'ACTIVE'),
(1900300008, 'city_label', '黑山头', 'heishantou', 8, 'ACTIVE');
-- 4. environment_type - 环境类型餐厅编辑用,前端key是environment_type
INSERT IGNORE INTO sys_dict_type (dict_type_id, dict_name, dict_type, category, status)
VALUES (1900000004, '环境类型', 'environment_type
```
<details>
<summary>📁 全部变更文件列表(点击展开)</summary>
```
A design-01-mengma-detail.jpg
A design-mengma-100pct.jpg
A design-mengma-detail.jpg
M docs/CLAUDE_WORKFLOW/CODE_STANDARDS.md
M docs/CLAUDE_WORKFLOW/architect/GUIDE.md
M docs/CLAUDE_WORKFLOW/qa/GUIDE.md
M docs/CLAUDE_WORKFLOW/reviewer/GUIDE.md
M docs/CLAUDE_WORKFLOW/senior-dev/GUIDE.md
M hl-callback-service/src/main/java/com/hulalv/callback/config/Knife4jConfig.java
M hl-callback-service/src/main/java/com/hulalv/callback/controller/MsgAuditCallbackController.java
M hl-callback-service/src/main/java/com/hulalv/callback/controller/WxCallbackController.java
M hl-callback-service/src/main/java/com/hulalv/callback/feign/UserServiceClient.java
M hl-callback-service/src/main/java/com/hulalv/callback/feign/UserServiceClientFallback.java
M hl-callback-service/src/main/java/com/hulalv/callback/handler/ApprovalEventHandler.java
M hl-callback-service/src/main/java/com/hulalv/callback/handler/ContactChangeHandler.java
M hl-callback-service/src/main/java/com/hulalv/callback/handler/ExternalContactHandler.java
M hl-callback-service/src/main/java/com/hulalv/callback/msgaudit/InternalChatMessageController.java
M hl-callback-service/src/main/java/com/hulalv/callback/msgaudit/MsgAuditController.java
M hl-callback-service/src/main/java/com/hulalv/callback/msgaudit/vo/ChatMessageVO.java
M hl-callback-service/src/main/resources/bootstrap.yml
M hl-common/src/main/java/com/hulalv/common/dto/AdminBasicDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/DepartmentDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/ExternalContactEventDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/FileBindRefsDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/FileUnbindRefsDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/OrderPayInfoDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/PaymentResultDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/RefundResultDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/ResourceDetailDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/TravelerValidationDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/WechatDeptSyncDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/WechatMessageDTO.java
M hl-common/src/main/java/com/hulalv/common/dto/WechatUserSyncDTO.java
M hl-common/src/main/java/com/hulalv/common/feign/MonitorFeignClient.java
M hl-common/src/main/java/com/hulalv/common/feign/MonitorFeignFallbackFactory.java
M hl-common/src/main/java/com/hulalv/common/feign/OrderRefundFeignClient.java
M hl-common/src/main/java/com/hulalv/common/feign/OrderRefundFeignFallbackFactory.java
M hl-common/src/main/java/com/hulalv/common/feign/ProductApprovalFeignClient.java
M hl-common/src/main/java/com/hulalv/common/feign/ProductApprovalFeignFallbackFactory.java
M hl-common/src/main/java/com/hulalv/common/feign/ResourceApprovalFeignClient.java
M hl-common/src/main/java/com/hulalv/common/feign/ResourceApprovalFeignFallbackFactory.java
M hl-common/src/main/java/com/hulalv/common/weather/AmapWeatherClient.java
M hl-contract-service/src/main/java/com/hulalv/contract/config/Knife4jConfig.java
M hl-contract-service/src/main/java/com/hulalv/contract/controller/AdminClauseTemplateController.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/controller/InternalMpContractController.java
M hl-contract-service/src/main/resources/bootstrap.yml
M hl-file-service/src/main/java/com/hulalv/file/config/Knife4jConfig.java
M hl-file-service/src/main/java/com/hulalv/file/controller/FileController.java
M hl-file-service/src/main/java/com/hulalv/file/controller/InternalFileController.java
M hl-file-service/src/main/java/com/hulalv/file/controller/MpFileController.java
M hl-file-service/src/main/resources/bootstrap.yml
A hl-gateway/src/main/java/com/hulalv/gateway/config/WebResourceConfig.java
M hl-gateway/src/main/resources/bootstrap.yml
M hl-guide-service/src/main/java/com/hulalv/guide/controller/AdminGuideArticleController.java
M hl-guide-service/src/main/java/com/hulalv/guide/controller/AdminGuideCategoryController.java
M hl-guide-service/src/main/java/com/hulalv/guide/controller/AdminGuideTagController.java
M hl-guide-service/src/main/java/com/hulalv/guide/controller/InternalWikiController.java
M hl-guide-service/src/main/resources/bootstrap.yml
M hl-insurance-service/src/main/java/com/hulalv/insurance/config/Knife4jConfig.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/AdminInsuranceSchemeController.java
M hl-insurance-service/src/main/java/com/hulalv/insurance/controller/InternalInsuranceController.java
M hl-insurance-service/src/main/resources/bootstrap.yml
M hl-material-service/src/main/java/com/hulalv/material/config/Knife4jConfig.java
M hl-material-service/src/main/java/com/hulalv/material/controller/InternalMaterialController.java
M hl-material-service/src/main/java/com/hulalv/material/controller/MaterialCategoryPermissionController.java
M hl-material-service/src/main/java/com/hulalv/material/controller/MaterialController.java
M hl-material-service/src/main/java/com/hulalv/material/controller/MaterialTagController.java
M hl-material-service/src/main/java/com/hulalv/material/controller/MpMaterialController.java
M hl-material-service/src/main/java/com/hulalv/material/feign/dto/ChunkUploadCancelRequest.java
M hl-material-service/src/main/java/com/hulalv/material/feign/dto/ChunkUploadCompleteRequest.java
M hl-material-service/src/main/java/com/hulalv/material/feign/dto/ChunkUploadInitRequest.java
M hl-material-service/src/main/java/com/hulalv/material/feign/dto/FileBatchIdsRequest.java
M hl-material-service/src/main/java/com/hulalv/material/feign/dto/FileUploadConfirmRequest.java
M hl-material-service/src/main/java/com/hulalv/material/feign/dto/FileUploadTokenRequest.java
M hl-material-service/src/main/java/com/hulalv/material/feign/vo/ChunkUploadInitVO.java
M hl-material-service/src/main/java/com/hulalv/material/feign/vo/ChunkUploadPartVO.java
M hl-material-service/src/main/java/com/hulalv/material/feign/vo/FileUploadTokenVO.java
M hl-material-service/src/main/java/com/hulalv/material/feign/vo/FileVO.java
M hl-material-service/src/main/resources/bootstrap.yml
M hl-monitor-service/src/main/java/com/hulalv/monitor/config/Knife4jConfig.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/ApprovalLogController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/DataRetentionController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/ErrorLogController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/InternalLogController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/LoginLogController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/MysqlMonitorController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/NotificationLogController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/OperationLogController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/RedisMonitorController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/RocketMqMonitorController.java
M hl-monitor-service/src/main/java/com/hulalv/monitor/controller/ServiceMonitorController.java
M hl-monitor-service/src/main/resources/bootstrap.yml
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpActivityController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpBadgeController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpBannerController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpConfigController.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/MpDesignerController.java
M hl-mp-service/src/main/java/com/hulalv/mp/controller/MpDictController.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/MpHomeController.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/MpInsuranceController.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/MpLikeController.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/MpSearchController.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/MpTripController.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/MpWeatherController.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/feign/MpPaymentFeignClient.java
M hl-mp-service/src/main/java/com/hulalv/mp/feign/MpPaymentFeignFallbackFactory.java
M hl-mp-service/src/main/java/com/hulalv/mp/feign/MpUserFeignClient.java
M hl-mp-service/src/main/java/com/hulalv/mp/feign/MpUserFeignFallbackFactory.java
M hl-mp-service/src/main/resources/bootstrap.yml
M hl-order-service/src/main/java/com/hulalv/order/config/Knife4jConfig.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/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/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/AdminCreateOrderRequest.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/CreateWorkOrderRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/EarlyBirdPlanRequest.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/MpOrderQueryRequest.java
M hl-order-service/src/main/java/com/hulalv/order/dto/MpUpdateOrderRequest.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/UpdateOrderStatusRequest.java
M hl-order-service/src/main/java/com/hulalv/order/service/WeatherService.java
M hl-order-service/src/main/java/com/hulalv/order/vo/WorkOrderVO.java
M hl-order-service/src/main/resources/bootstrap.yml
M hl-payment-service/src/main/java/com/hulalv/payment/config/Knife4jConfig.java
M hl-payment-service/src/main/java/com/hulalv/payment/controller/AdminPaymentController.java
M hl-payment-service/src/main/java/com/hulalv/payment/controller/InternalPaymentController.java
M hl-payment-service/src/main/java/com/hulalv/payment/controller/PaymentCallbackController.java
M hl-payment-service/src/main/resources/bootstrap.yml
M hl-product-service/src/main/java/com/hulalv/product/config/Knife4jConfig.java
M hl-product-service/src/main/java/com/hulalv/product/controller/DistrictController.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/InternalMpProductController.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/MpProductController.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/FamilySaveRequest.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/GroupBatchCreateRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/GroupBatchDisbandRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/GroupBatchStaffRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/GroupBatchUpdateRequest.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/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/ProductStatusRequest.java
M hl-product-service/src/main/java/com/hulalv/product/dto/QuoteRequest.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/BatchMaterialIdsRequest.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/RefBatchBindRequest.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/RefBatchUnbindRequest.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/RefBindRequest.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/RefUnbindRequest.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/ResourceCoverQuery.java
M hl-product-service/src/main/java/com/hulalv/product/feign/dto/ResourcePriceQuery.java
M hl-product-service/src/main/java/com/hulalv/product/feign/vo/MaterialVO.java
M hl-product-service/src/main/java/com/hulalv/product/feign/vo/ResourcePriceVO.java
M hl-product-service/src/main/resources/bootstrap.yml
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/controller/ActivityPriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/controller/ActivityTagController.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/controller/InternalActivityController.java
M hl-resource-service/src/main/java/com/hulalv/resource/activity/controller/InternalMpActivityController.java
M hl-resource-service/src/main/java/com/hulalv/resource/config/Knife4jConfig.java
M hl-resource-service/src/main/java/com/hulalv/resource/controller/InternalMpResourceBriefController.java
M hl-resource-service/src/main/java/com/hulalv/resource/controller/InternalResourceController.java
M hl-resource-service/src/main/java/com/hulalv/resource/controller/InternalResourceDetailController.java
M hl-resource-service/src/main/java/com/hulalv/resource/controller/InternalResourcePriceController.java
M hl-resource-service/src/main/java/com/hulalv/resource/controller/InternalResourceStatsController.java
M hl-resource-service/src/main/java/com/hulalv/resource/cost/controller/CostItemController.java
M hl-resource-service/src/main/java/com/hulalv/resource/cost/controller/CostPriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/cost/controller/InternalCostController.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/controller/HotelTagController.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/controller/InternalHotelController.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/controller/InternalMpHotelController.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/controller/RoomPriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/hotel/controller/RoomTypeController.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/controller/InternalMpRestaurantController.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/controller/InternalRestaurantController.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/controller/RestaurantTagController.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/restaurant/vo/RestaurantListVO.java
M hl-resource-service/src/main/java/com/hulalv/resource/restaurant/vo/RestaurantVO.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/controller/InternalMpScenicController.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/controller/InternalScenicController.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/controller/ScenicPriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/scenic/controller/ScenicSeasonController.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/controller/ScenicTagController.java
M hl-resource-service/src/main/java/com/hulalv/resource/service/controller/InternalServiceController.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/controller/ServicePriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/service/controller/ServiceTagController.java
M hl-resource-service/src/main/java/com/hulalv/resource/staff/controller/InternalStaffController.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/controller/StaffPriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/staff/controller/StaffTagController.java
M hl-resource-service/src/main/java/com/hulalv/resource/supplies/controller/InternalSuppliesController.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/controller/SuppliesTagController.java
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/controller/InternalVehicleController.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/controller/VehiclePriceCalendarController.java
M hl-resource-service/src/main/java/com/hulalv/resource/vehicle/controller/VehicleTagController.java
M hl-resource-service/src/main/resources/bootstrap.yml
M hl-review-service/src/main/java/com/hulalv/review/config/Knife4jConfig.java
M hl-review-service/src/main/java/com/hulalv/review/controller/AdminReviewController.java
M hl-review-service/src/main/java/com/hulalv/review/controller/InternalMpReviewController.java
M hl-review-service/src/main/java/com/hulalv/review/controller/InternalReviewController.java
M hl-review-service/src/main/resources/bootstrap.yml
M hl-task-service/src/main/java/com/hulalv/task/controller/BoardController.java
M hl-task-service/src/main/java/com/hulalv/task/controller/TaskController.java
M hl-task-service/src/main/resources/bootstrap.yml
M hl-user-service/src/main/java/com/hulalv/user/config/Knife4jConfig.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminAgreementController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminBannerController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminContactController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminCustomerController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminDesignerController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminExploreCategoryController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminFaqController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminFrontendConfigController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminProfileController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminTopicController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/AdminUserController.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/FavoriteController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/FootprintController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalApprovalController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalBadgeController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalBannerController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalContactController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalDesignerController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalExploreCategoryController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalFaqController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalFrontendConfigController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalLikeController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalLoginLogController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalMpCommonController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalMpDictController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalMpMessageController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalMpUserController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalOrderUserController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalTopicController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalUserController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalWechatController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/InternalWishController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/OfficialAccountCallbackController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/PublicDictController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/SysDictController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/SysJobController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/SysMenuController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/SysRoleController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/TravelerController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/UserController.java
M hl-user-service/src/main/java/com/hulalv/user/controller/WechatSyncController.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/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/CreateJobRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/FavoriteRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/FootprintRequest.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/SwitchRoleRequest.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/UpdateAvatarRequest.java
M hl-user-service/src/main/java/com/hulalv/user/dto/UpdateJobRequest.java
M hl-user-service/src/main/java/com/hulalv/user/notification/controller/AdminNotificationController.java
M hl-user-service/src/main/java/com/hulalv/user/notification/dto/CustomPushRequest.java
M hl-user-service/src/main/java/com/hulalv/user/notification/vo/CustomPushResultVO.java
M hl-user-service/src/main/java/com/hulalv/user/notification/vo/EventConfigVO.java
M hl-user-service/src/main/java/com/hulalv/user/notification/vo/SendLogVO.java
M hl-user-service/src/main/java/com/hulalv/user/notification/vo/UserSimpleVO.java
M hl-user-service/src/main/java/com/hulalv/user/service/SysJobService.java
M hl-user-service/src/main/java/com/hulalv/user/vo/ContactVO.java
M hl-user-service/src/main/java/com/hulalv/user/vo/CustomerVO.java
M hl-user-service/src/main/java/com/hulalv/user/vo/LoginLogVO.java
A hl-user-service/src/main/java/com/hulalv/user/vo/SysJobLogVO.java
A hl-user-service/src/main/java/com/hulalv/user/vo/SysJobVO.java
M hl-user-service/src/main/java/com/hulalv/user/vo/UserVO.java
M hl-user-service/src/main/resources/bootstrap.yml
M hl-user-service/src/test/java/com/hulalv/user/service/SysJobServiceTest.java
A mastergo-overview.jpg
A scripts/ai-bridge/ai_bridge.py
A scripts/ai-bridge/ai_bridge.service
A scripts/ai-bridge/mg-mengma-detail.jpg
A scripts/ai-bridge/mg-preview.jpg
A scripts/ai-bridge/setup.sh
A scripts/ai-bridge/state.json
A scripts/api-changelog-sync.sh
A sql/add_customer_service_role.sql
M sql/dict_data_seed.sql
A sql/dict_fix_frontend.sql
```
</details>