changelog: e6c349d - feat: 定制需求模块+管理员发票管理接口+Knife4j分组
这个提交包含在:
父节点
b4adea7dc3
当前提交
8feb0abfb9
@ -0,0 +1,623 @@
|
||||
# 接口变更记录 — 2026-03-17 15:40
|
||||
|
||||
> **提交** `e6c349d` · **作者** wx · **时间** 2026-03-17 15:40:15 +0800
|
||||
>
|
||||
> feat: 定制需求模块+管理员发票管理接口+Knife4j分组
|
||||
|
||||
## 变更总览
|
||||
|
||||
- **订单服务**
|
||||
- 🆕 AdminInvoice (+5 接口)
|
||||
- 🆕 AdminCustomize (+5 接口)
|
||||
- 🆕 InternalCustomize (+4 接口)
|
||||
|
||||
---
|
||||
|
||||
## 订单服务
|
||||
|
||||
### 🆕 新增: AdminInvoice
|
||||
|
||||
#### `GET` /admin/invoice/page — 发票分页列表
|
||||
|
||||
**响应** `Result<PageResult<InvoiceVO>>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `id` | `String` | 发票ID |
|
||||
| `orderId` | `String` | 订单ID |
|
||||
| `orderNo` | `String` | 订单号 |
|
||||
| `amount` | `String` | 金额 |
|
||||
| `titleType` | `String` | 抬头类型(personal=个人/company=企业) |
|
||||
| `invoiceTitle` | `String` | 发票抬头 |
|
||||
| `taxNumber` | `String` | 税号 |
|
||||
| `email` | `String` | 接收邮箱 |
|
||||
| `invoiceType` | `String` | 发票类型 |
|
||||
| `invoiceContent` | `String` | 发票内容 |
|
||||
| `status` | `String` | 发票状态 |
|
||||
| `fileUrl` | `String` | 发票文件URL |
|
||||
| `failReason` | `String` | 失败原因 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `remark` | `String` | 备注信息 |
|
||||
| `bankName` | `String` | 开户行(企业发票) |
|
||||
| `bankAccount` | `String` | 银行账号(企业发票) |
|
||||
| `companyAddress` | `String` | 企业地址(企业发票) |
|
||||
| `companyPhone` | `String` | 企业电话(企业发票) |
|
||||
| `invoiceNo` | `String` | 发票号码 |
|
||||
| `issuedAt` | `LocalDateTime` | 开票时间 |
|
||||
| `issuedBy` | `String` | 开票操作人ID |
|
||||
| `userId` | `String` | 用户ID |
|
||||
| `originalInvoiceId` | `String` | 原发票ID(换开时关联) |
|
||||
| `reissueCount` | `Integer` | 换开次数 |
|
||||
| `createdAt` | `LocalDateTime` | 创建时间 |
|
||||
| `updatedAt` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `GET` /admin/invoice/{id} — 发票详情
|
||||
|
||||
**参数**
|
||||
|
||||
- `{id}` (Long) — 路径参数
|
||||
|
||||
**响应** `Result<InvoiceVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `id` | `String` | 发票ID |
|
||||
| `orderId` | `String` | 订单ID |
|
||||
| `orderNo` | `String` | 订单号 |
|
||||
| `amount` | `String` | 金额 |
|
||||
| `titleType` | `String` | 抬头类型(personal=个人/company=企业) |
|
||||
| `invoiceTitle` | `String` | 发票抬头 |
|
||||
| `taxNumber` | `String` | 税号 |
|
||||
| `email` | `String` | 接收邮箱 |
|
||||
| `invoiceType` | `String` | 发票类型 |
|
||||
| `invoiceContent` | `String` | 发票内容 |
|
||||
| `status` | `String` | 发票状态 |
|
||||
| `fileUrl` | `String` | 发票文件URL |
|
||||
| `failReason` | `String` | 失败原因 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `remark` | `String` | 备注信息 |
|
||||
| `bankName` | `String` | 开户行(企业发票) |
|
||||
| `bankAccount` | `String` | 银行账号(企业发票) |
|
||||
| `companyAddress` | `String` | 企业地址(企业发票) |
|
||||
| `companyPhone` | `String` | 企业电话(企业发票) |
|
||||
| `invoiceNo` | `String` | 发票号码 |
|
||||
| `issuedAt` | `LocalDateTime` | 开票时间 |
|
||||
| `issuedBy` | `String` | 开票操作人ID |
|
||||
| `userId` | `String` | 用户ID |
|
||||
| `originalInvoiceId` | `String` | 原发票ID(换开时关联) |
|
||||
| `reissueCount` | `Integer` | 换开次数 |
|
||||
| `createdAt` | `LocalDateTime` | 创建时间 |
|
||||
| `updatedAt` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `PUT` /admin/invoice/{id}/issue — 开票完成
|
||||
|
||||
**参数**
|
||||
|
||||
- `{id}` (Long) — 路径参数
|
||||
|
||||
**请求体** `AdminInvoiceIssueRequest`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `fileUrl` | `String` | 发票文件URL |
|
||||
| `invoiceNo` | `String` | 发票号码 |
|
||||
|
||||
**响应** `Result<InvoiceVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `id` | `String` | 发票ID |
|
||||
| `orderId` | `String` | 订单ID |
|
||||
| `orderNo` | `String` | 订单号 |
|
||||
| `amount` | `String` | 金额 |
|
||||
| `titleType` | `String` | 抬头类型(personal=个人/company=企业) |
|
||||
| `invoiceTitle` | `String` | 发票抬头 |
|
||||
| `taxNumber` | `String` | 税号 |
|
||||
| `email` | `String` | 接收邮箱 |
|
||||
| `invoiceType` | `String` | 发票类型 |
|
||||
| `invoiceContent` | `String` | 发票内容 |
|
||||
| `status` | `String` | 发票状态 |
|
||||
| `fileUrl` | `String` | 发票文件URL |
|
||||
| `failReason` | `String` | 失败原因 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `remark` | `String` | 备注信息 |
|
||||
| `bankName` | `String` | 开户行(企业发票) |
|
||||
| `bankAccount` | `String` | 银行账号(企业发票) |
|
||||
| `companyAddress` | `String` | 企业地址(企业发票) |
|
||||
| `companyPhone` | `String` | 企业电话(企业发票) |
|
||||
| `invoiceNo` | `String` | 发票号码 |
|
||||
| `issuedAt` | `LocalDateTime` | 开票时间 |
|
||||
| `issuedBy` | `String` | 开票操作人ID |
|
||||
| `userId` | `String` | 用户ID |
|
||||
| `originalInvoiceId` | `String` | 原发票ID(换开时关联) |
|
||||
| `reissueCount` | `Integer` | 换开次数 |
|
||||
| `createdAt` | `LocalDateTime` | 创建时间 |
|
||||
| `updatedAt` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `PUT` /admin/invoice/{id}/fail — 开票失败
|
||||
|
||||
**参数**
|
||||
|
||||
- `{id}` (Long) — 路径参数
|
||||
|
||||
**请求体** `AdminInvoiceFailRequest`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `failReason` | `String` | 失败原因 |
|
||||
|
||||
**响应** `Result<InvoiceVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `id` | `String` | 发票ID |
|
||||
| `orderId` | `String` | 订单ID |
|
||||
| `orderNo` | `String` | 订单号 |
|
||||
| `amount` | `String` | 金额 |
|
||||
| `titleType` | `String` | 抬头类型(personal=个人/company=企业) |
|
||||
| `invoiceTitle` | `String` | 发票抬头 |
|
||||
| `taxNumber` | `String` | 税号 |
|
||||
| `email` | `String` | 接收邮箱 |
|
||||
| `invoiceType` | `String` | 发票类型 |
|
||||
| `invoiceContent` | `String` | 发票内容 |
|
||||
| `status` | `String` | 发票状态 |
|
||||
| `fileUrl` | `String` | 发票文件URL |
|
||||
| `failReason` | `String` | 失败原因 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `remark` | `String` | 备注信息 |
|
||||
| `bankName` | `String` | 开户行(企业发票) |
|
||||
| `bankAccount` | `String` | 银行账号(企业发票) |
|
||||
| `companyAddress` | `String` | 企业地址(企业发票) |
|
||||
| `companyPhone` | `String` | 企业电话(企业发票) |
|
||||
| `invoiceNo` | `String` | 发票号码 |
|
||||
| `issuedAt` | `LocalDateTime` | 开票时间 |
|
||||
| `issuedBy` | `String` | 开票操作人ID |
|
||||
| `userId` | `String` | 用户ID |
|
||||
| `originalInvoiceId` | `String` | 原发票ID(换开时关联) |
|
||||
| `reissueCount` | `Integer` | 换开次数 |
|
||||
| `createdAt` | `LocalDateTime` | 创建时间 |
|
||||
| `updatedAt` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `PUT` /admin/invoice/{id}/void — 作废发票
|
||||
|
||||
**参数**
|
||||
|
||||
- `{id}` (Long) — 路径参数
|
||||
|
||||
**响应** `Result<InvoiceVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `id` | `String` | 发票ID |
|
||||
| `orderId` | `String` | 订单ID |
|
||||
| `orderNo` | `String` | 订单号 |
|
||||
| `amount` | `String` | 金额 |
|
||||
| `titleType` | `String` | 抬头类型(personal=个人/company=企业) |
|
||||
| `invoiceTitle` | `String` | 发票抬头 |
|
||||
| `taxNumber` | `String` | 税号 |
|
||||
| `email` | `String` | 接收邮箱 |
|
||||
| `invoiceType` | `String` | 发票类型 |
|
||||
| `invoiceContent` | `String` | 发票内容 |
|
||||
| `status` | `String` | 发票状态 |
|
||||
| `fileUrl` | `String` | 发票文件URL |
|
||||
| `failReason` | `String` | 失败原因 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `remark` | `String` | 备注信息 |
|
||||
| `bankName` | `String` | 开户行(企业发票) |
|
||||
| `bankAccount` | `String` | 银行账号(企业发票) |
|
||||
| `companyAddress` | `String` | 企业地址(企业发票) |
|
||||
| `companyPhone` | `String` | 企业电话(企业发票) |
|
||||
| `invoiceNo` | `String` | 发票号码 |
|
||||
| `issuedAt` | `LocalDateTime` | 开票时间 |
|
||||
| `issuedBy` | `String` | 开票操作人ID |
|
||||
| `userId` | `String` | 用户ID |
|
||||
| `originalInvoiceId` | `String` | 原发票ID(换开时关联) |
|
||||
| `reissueCount` | `Integer` | 换开次数 |
|
||||
| `createdAt` | `LocalDateTime` | 创建时间 |
|
||||
| `updatedAt` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
### 🆕 新增: AdminCustomize
|
||||
|
||||
#### `GET` /admin/order/customize/page — 定制请求列表
|
||||
|
||||
**响应** `Result<PageResult<CustomizeRequestListVO>>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
|
||||
#### `GET` /admin/order/customize/{requestId} — 定制请求详情
|
||||
|
||||
**参数**
|
||||
|
||||
- `{requestId}` (Long) — 路径参数
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `PUT` /admin/order/customize/{requestId}/accept — 接受定制请求
|
||||
|
||||
**参数**
|
||||
|
||||
- `{requestId}` (Long) — 路径参数
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `PUT` /admin/order/customize/{requestId}/reply — 回复/报价
|
||||
|
||||
**参数**
|
||||
|
||||
- `{requestId}` (Long) — 路径参数
|
||||
|
||||
**请求体** `AdminReplyRequest`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `reply` | `String` | 回复内容 |
|
||||
| `productId` | `Long` | 关联产品ID(定制产品已创建时传入) |
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `PUT` /admin/order/customize/{requestId}/complete — 标记完成
|
||||
|
||||
**参数**
|
||||
|
||||
- `{requestId}` (Long) — 路径参数
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
### 🆕 新增: InternalCustomize
|
||||
|
||||
#### `POST` /internal/mp/customize/submit — 提交定制请求
|
||||
|
||||
**参数**
|
||||
|
||||
- `userId` (Long) — 查询参数
|
||||
|
||||
**请求体** `CreateCustomizeRequestDTO`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `designerId` | `Long` | 指定定制师ID(可为空=系统分配) |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `GET` /internal/mp/customize/list — 定制请求列表
|
||||
|
||||
**参数**
|
||||
|
||||
- `userId` (Long) — 查询参数
|
||||
- `page` (int) — 查询参数
|
||||
- `pageSize` (int) — 查询参数
|
||||
|
||||
**响应** `Result<PageResult<CustomizeRequestListVO>>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
|
||||
#### `GET` /internal/mp/customize/{requestId} — 定制请求详情
|
||||
|
||||
**参数**
|
||||
|
||||
- `{requestId}` (Long) — 路径参数
|
||||
- `userId` (Long) — 查询参数
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
#### `POST` /internal/mp/customize/{requestId}/cancel — 取消定制请求
|
||||
|
||||
**参数**
|
||||
|
||||
- `{requestId}` (Long) — 路径参数
|
||||
- `userId` (Long) — 查询参数
|
||||
|
||||
**响应** `Result<CustomizeRequestVO>`
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的(字典:travel_purpose) |
|
||||
| `requestType` | `String` | 需求类型(字典:customize_request_type) |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围(字典:customize_budget) |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `statusLabel` | `String` | 状态标签 |
|
||||
| `designerName` | `String` | 定制师姓名 |
|
||||
| `designerAvatar` | `String` | 定制师头像 |
|
||||
| `productId` | `Long` | 关联产品ID |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
---
|
||||
|
||||
## 📦 其他数据对象变更
|
||||
|
||||
> 以下变更未直接关联到本次接口变更,但可能影响现有接口的请求/响应
|
||||
|
||||
### 订单服务
|
||||
|
||||
#### 🆕 AdminCustomizeQueryRequest
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `keyword` | `String` | 搜索关键词(联系人/目标地区/需求描述) |
|
||||
| `status` | `String` | 状态(字典:customize_request_status) |
|
||||
| `designerId` | `Long` | 定制师ID |
|
||||
| `sortBy` | `String` | 排序字段(createTime/startDate) |
|
||||
| `sortDir` | `String` | 排序方向(desc/asc) |
|
||||
|
||||
#### 🆕 AdminInvoiceQueryRequest
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `status` | `String` | 发票状态(字典:invoice_status) |
|
||||
| `orderNo` | `String` | 订单编号(模糊搜索) |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
|
||||
#### 🆕 CustomizeRequest
|
||||
|
||||
| 字段 | 类型 | 说明 |
|
||||
| --- | --- | --- |
|
||||
| `requestId` | `Long` | 请求ID |
|
||||
| `userId` | `Long` | 用户ID |
|
||||
| `designerId` | `Long` | 指定定制师ID(可为空=系统分配) |
|
||||
| `destination` | `String` | 目标地区 |
|
||||
| `travelPurpose` | `String` | 旅游目的 |
|
||||
| `requestType` | `String` | 需求类型 |
|
||||
| `startDate` | `LocalDate` | 期望出发日期 |
|
||||
| `endDate` | `LocalDate` | 期望结束日期 |
|
||||
| `days` | `Integer` | 期望天数 |
|
||||
| `adultCount` | `Integer` | 成人数 |
|
||||
| `childCount` | `Integer` | 儿童数 |
|
||||
| `budget` | `String` | 预算范围 |
|
||||
| `requirements` | `String` | 详细需求描述 |
|
||||
| `contactPhone` | `String` | 联系电话 |
|
||||
| `contactName` | `String` | 联系人 |
|
||||
| `status` | `String` | 状态:PENDING/ACCEPTED/DESIGNING/QUOTED/COMPLETED/CANCELLED |
|
||||
| `designerName` | `String` | 定制师姓名(冗余) |
|
||||
| `designerAvatar` | `String` | 定制师头像(冗余) |
|
||||
| `productId` | `Long` | 关联产品ID(定制师创建的定制产品) |
|
||||
| `reply` | `String` | 定制师回复 |
|
||||
| `repliedAt` | `LocalDateTime` | 回复时间 |
|
||||
| `deletedAt` | `LocalDateTime` | 删除时间(软删除) |
|
||||
| `createTime` | `LocalDateTime` | 创建时间 |
|
||||
| `updateTime` | `LocalDateTime` | 更新时间 |
|
||||
|
||||
<details>
|
||||
<summary>📁 全部变更文件 (点击展开)</summary>
|
||||
|
||||
```
|
||||
M hl-order-service/src/main/java/com/hulalv/order/OrderServiceApplication.java
|
||||
M hl-order-service/src/main/java/com/hulalv/order/config/Knife4jConfig.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/controller/AdminInvoiceController.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/constant/CustomizeConstants.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/controller/AdminCustomizeController.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/controller/InternalCustomizeController.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/dto/AdminCustomizeQueryRequest.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/dto/AdminReplyRequest.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/dto/CreateCustomizeRequestDTO.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/entity/CustomizeRequest.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/mapper/CustomizeRequestMapper.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/service/CustomizeRequestService.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/vo/CustomizeRequestListVO.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/customize/vo/CustomizeRequestVO.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/dto/AdminInvoiceFailRequest.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/dto/AdminInvoiceIssueRequest.java
|
||||
A hl-order-service/src/main/java/com/hulalv/order/dto/AdminInvoiceQueryRequest.java
|
||||
A sql/customize_request.sql
|
||||
```
|
||||
</details>
|
||||
正在加载...
x
在新工单中引用
屏蔽一个用户