From 8d54c4655486c74e95f33725448f843734c26bd2 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Wed, 1 Apr 2026 12:43:52 +0800 Subject: [PATCH] =?UTF-8?q?changelog:=20421ec547=20-=20feat:=20=E5=9B=A2?= =?UTF-8?q?=E9=98=9F=E5=A1=AB=E6=8A=A5=E6=94=B9=E4=B8=BA=E8=A1=A8=E5=8D=95?= =?UTF-8?q?=E6=A8=A1=E5=BC=8F=E2=80=94=E2=80=94=E9=A2=84=E5=A1=AB/?= =?UTF-8?q?=E6=9A=82=E5=AD=98/=E6=8F=90=E4=BA=A4=E4=B8=89=E6=AD=A5?= =?UTF-8?q?=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2026-04/2026-04-01_1243_421ec547_feat.md | 256 ++++++++++++++++++ 1 file changed, 256 insertions(+) create mode 100644 changelogs/2026-04/2026-04-01_1243_421ec547_feat.md diff --git a/changelogs/2026-04/2026-04-01_1243_421ec547_feat.md b/changelogs/2026-04/2026-04-01_1243_421ec547_feat.md new file mode 100644 index 0000000..ffe0cd1 --- /dev/null +++ b/changelogs/2026-04/2026-04-01_1243_421ec547_feat.md @@ -0,0 +1,256 @@ +# 接口变更记录 — 2026-04-01 12:43 + +> **提交** `421ec547` · **作者** wx · **时间** 2026-04-01 12:43:52 +0800 +> +> feat: 团队填报改为表单模式——预填/暂存/提交三步流程 + +## 变更总览 + +- **订单服务** + - AdminTeamReport (+3, -1, 名1) + +--- + +## 订单服务 + +### AdminTeamReport + +> 📖 **接口文档**: [http://192.168.100.236:8084/doc.html](http://192.168.100.236:8084/doc.html) → 标签 **「团队填报管理」** + +### 🆕 `GET` /admin/team-report/prefill/{orderId} — 预填表单(从订单数据自动填充) + +**参数** + + - `{orderId}` (`Long`) — 路径参数:订单ID + +**响应** `Result` + +| 字段 | 类型 | 说明 | +| --- | --- | --- | +| `orderId` | `Long` | 订单ID | +| `agencyCode` | `String` | 旅行社编码 hulai/qianshou/hulai-wenlu | +| `businessType` | `Integer` | 业务类型 2=国内游组团 6=入境接待 7=国内接待 | +| `agencyName` | `String` | 旅行社名称 | +| `agencyLicense` | `String` | 经营许可证号 | +| `itineraryName` | `String` | 线路名称 | +| `teamId` | `String` | 团号 | +| `dateGo` | `String` | 出发日期 yyyy-MM-dd | +| `timeGoHour` | `String` | 出发时间 HH | +| `timeGoMinute` | `String` | 出发时间 mm | +| `dateBack` | `String` | 返回日期 yyyy-MM-dd | +| `timeBackHour` | `String` | 返回时间 HH | +| `timeBackMinute` | `String` | 返回时间 mm | +| `sourceCity` | `String` | 出发城市 | +| `sourceProvince` | `String` | 出发省份 | +| `destinationCity` | `String` | 前往城市 | +| `destinationProvince` | `String` | 前往省份 | +| `itineraryDay` | `Integer` | 天数 | +| `vehicle` | `Integer` | 出发交通 1=飞机 2=火车 3=轮船 4=汽车 5=其它 | +| `vehicleIn` | `Integer` | 返回交通 1=飞机 2=火车 3=轮船 4=汽车 5=其它 | +| `vehicleOutNums` | `String` | 出发班次/车次 | +| `vehicleInNums` | `String` | 返回班次/车次 | +| `nativeTravelAgency` | `String` | 地接社名称 | +| `teamType` | `Integer` | 团队类型 1=自组自接 2=包机 3=专列 4=其他 | +| `peopleNums` | `Integer` | 团队人数 | +| `childNums` | `Integer` | 儿童人数 | +| `journeyDesc` | `String` | 行程总描述 | +| `applicantName` | `String` | 申请人姓名 | +| `applicantPhone` | `String` | 申请人电话 | +| `guides` | `List` | 导游列表 | +| `name` | `String` | 导游姓名 | +| `cardId` | `String` | 电子导游证号 | +| `phone` | `String` | 导游电话 | +| `type` | `Integer` | 导游类型 1=全陪 2=地陪 | +| `isLeader` | `Integer` | 是否领队 0=否 1=是 | +| `busInfo` | `List` | 车队列表 | +| `carId` | `String` | 车牌号 | +| `carComp` | `String` | 所属公司 | +| `driverName` | `String` | 驾驶员姓名 | +| `driverPhone` | `String` | 驾驶员联系电话 | +| `itineraryList` | `List` | 行程列表(按天按站点) | +| `dayNumber` | `Integer` | 第几天 | +| `siteNum` | `Integer` | 当天第几个站点 | +| `date` | `String` | 具体日期 yyyy-MM-dd | +| `city` | `String` | 前往城市 | +| `province` | `String` | 前往省份 | +| `journeyDesc` | `String` | 站点行程描述 | +| `title` | `String` | 站点标题 | +| `isTransit` | `Integer` | 是否过境 0=否 1=是 | +| `touristList` | `List` | 游客列表 | +| `name` | `String` | 姓名 | +| `pyFamilyName` | `String` | 姓拼音 | +| `pyGivenName` | `String` | 名拼音 | +| `dateOfBirth` | `String` | 出生日期 yyyy-MM-dd | +| `phoneNum` | `String` | 联系方式 | +| `sex` | `Integer` | 性别 0=男 1=女 | +| `age` | `Integer` | 年龄 | +| `isChild` | `Integer` | 是否儿童 0=否 1=是 | +| `hrProvince` | `String` | 户籍所在省 | +| `cardType` | `Integer` | 证件类型 1=身份证 2=护照 | +| `cardId` | `String` | 证件号码 | +| `cardValidTo` | `String` | 证件有效期至 yyyy-MM-dd | + +### 🆕 `POST` /admin/team-report/save — 暂存表单(不提交到12301) + +**请求体** `TeamReportFormDTO` + +| 字段 | 类型 | 说明 | +| --- | --- | --- | +| `orderId` | `Long` | 订单ID | +| `agencyCode` | `String` | 旅行社编码 hulai/qianshou/hulai-wenlu | +| `businessType` | `Integer` | 业务类型 2=国内游组团 6=入境接待 7=国内接待 | +| `agencyName` | `String` | 旅行社名称 | +| `agencyLicense` | `String` | 经营许可证号 | +| `itineraryName` | `String` | 线路名称 | +| `teamId` | `String` | 团号 | +| `dateGo` | `String` | 出发日期 yyyy-MM-dd | +| `timeGoHour` | `String` | 出发时间 HH | +| `timeGoMinute` | `String` | 出发时间 mm | +| `dateBack` | `String` | 返回日期 yyyy-MM-dd | +| `timeBackHour` | `String` | 返回时间 HH | +| `timeBackMinute` | `String` | 返回时间 mm | +| `sourceCity` | `String` | 出发城市 | +| `sourceProvince` | `String` | 出发省份 | +| `destinationCity` | `String` | 前往城市 | +| `destinationProvince` | `String` | 前往省份 | +| `itineraryDay` | `Integer` | 天数 | +| `vehicle` | `Integer` | 出发交通 1=飞机 2=火车 3=轮船 4=汽车 5=其它 | +| `vehicleIn` | `Integer` | 返回交通 1=飞机 2=火车 3=轮船 4=汽车 5=其它 | +| `vehicleOutNums` | `String` | 出发班次/车次 | +| `vehicleInNums` | `String` | 返回班次/车次 | +| `nativeTravelAgency` | `String` | 地接社名称 | +| `teamType` | `Integer` | 团队类型 1=自组自接 2=包机 3=专列 4=其他 | +| `peopleNums` | `Integer` | 团队人数 | +| `childNums` | `Integer` | 儿童人数 | +| `journeyDesc` | `String` | 行程总描述 | +| `applicantName` | `String` | 申请人姓名 | +| `applicantPhone` | `String` | 申请人电话 | +| `guides` | `List` | 导游列表 | +| `name` | `String` | 导游姓名 | +| `cardId` | `String` | 电子导游证号 | +| `phone` | `String` | 导游电话 | +| `type` | `Integer` | 导游类型 1=全陪 2=地陪 | +| `isLeader` | `Integer` | 是否领队 0=否 1=是 | +| `busInfo` | `List` | 车队列表 | +| `carId` | `String` | 车牌号 | +| `carComp` | `String` | 所属公司 | +| `driverName` | `String` | 驾驶员姓名 | +| `driverPhone` | `String` | 驾驶员联系电话 | +| `itineraryList` | `List` | 行程列表(按天按站点) | +| `dayNumber` | `Integer` | 第几天 | +| `siteNum` | `Integer` | 当天第几个站点 | +| `date` | `String` | 具体日期 yyyy-MM-dd | +| `city` | `String` | 前往城市 | +| `province` | `String` | 前往省份 | +| `journeyDesc` | `String` | 站点行程描述 | +| `title` | `String` | 站点标题 | +| `isTransit` | `Integer` | 是否过境 0=否 1=是 | +| `touristList` | `List` | 游客列表 | +| `name` | `String` | 姓名 | +| `pyFamilyName` | `String` | 姓拼音 | +| `pyGivenName` | `String` | 名拼音 | +| `dateOfBirth` | `String` | 出生日期 yyyy-MM-dd | +| `phoneNum` | `String` | 联系方式 | +| `sex` | `Integer` | 性别 0=男 1=女 | +| `age` | `Integer` | 年龄 | +| `isChild` | `Integer` | 是否儿童 0=否 1=是 | +| `hrProvince` | `String` | 户籍所在省 | +| `cardType` | `Integer` | 证件类型 1=身份证 2=护照 | +| `cardId` | `String` | 证件号码 | +| `cardValidTo` | `String` | 证件有效期至 yyyy-MM-dd | + +**响应** `Result` + +### 🆕 `POST` /admin/team-report/submit — 提交到12301平台 + +**请求体** `TeamReportFormDTO` + +| 字段 | 类型 | 说明 | +| --- | --- | --- | +| `orderId` | `Long` | 订单ID | +| `agencyCode` | `String` | 旅行社编码 hulai/qianshou/hulai-wenlu | +| `businessType` | `Integer` | 业务类型 2=国内游组团 6=入境接待 7=国内接待 | +| `agencyName` | `String` | 旅行社名称 | +| `agencyLicense` | `String` | 经营许可证号 | +| `itineraryName` | `String` | 线路名称 | +| `teamId` | `String` | 团号 | +| `dateGo` | `String` | 出发日期 yyyy-MM-dd | +| `timeGoHour` | `String` | 出发时间 HH | +| `timeGoMinute` | `String` | 出发时间 mm | +| `dateBack` | `String` | 返回日期 yyyy-MM-dd | +| `timeBackHour` | `String` | 返回时间 HH | +| `timeBackMinute` | `String` | 返回时间 mm | +| `sourceCity` | `String` | 出发城市 | +| `sourceProvince` | `String` | 出发省份 | +| `destinationCity` | `String` | 前往城市 | +| `destinationProvince` | `String` | 前往省份 | +| `itineraryDay` | `Integer` | 天数 | +| `vehicle` | `Integer` | 出发交通 1=飞机 2=火车 3=轮船 4=汽车 5=其它 | +| `vehicleIn` | `Integer` | 返回交通 1=飞机 2=火车 3=轮船 4=汽车 5=其它 | +| `vehicleOutNums` | `String` | 出发班次/车次 | +| `vehicleInNums` | `String` | 返回班次/车次 | +| `nativeTravelAgency` | `String` | 地接社名称 | +| `teamType` | `Integer` | 团队类型 1=自组自接 2=包机 3=专列 4=其他 | +| `peopleNums` | `Integer` | 团队人数 | +| `childNums` | `Integer` | 儿童人数 | +| `journeyDesc` | `String` | 行程总描述 | +| `applicantName` | `String` | 申请人姓名 | +| `applicantPhone` | `String` | 申请人电话 | +| `guides` | `List` | 导游列表 | +| `name` | `String` | 导游姓名 | +| `cardId` | `String` | 电子导游证号 | +| `phone` | `String` | 导游电话 | +| `type` | `Integer` | 导游类型 1=全陪 2=地陪 | +| `isLeader` | `Integer` | 是否领队 0=否 1=是 | +| `busInfo` | `List` | 车队列表 | +| `carId` | `String` | 车牌号 | +| `carComp` | `String` | 所属公司 | +| `driverName` | `String` | 驾驶员姓名 | +| `driverPhone` | `String` | 驾驶员联系电话 | +| `itineraryList` | `List` | 行程列表(按天按站点) | +| `dayNumber` | `Integer` | 第几天 | +| `siteNum` | `Integer` | 当天第几个站点 | +| `date` | `String` | 具体日期 yyyy-MM-dd | +| `city` | `String` | 前往城市 | +| `province` | `String` | 前往省份 | +| `journeyDesc` | `String` | 站点行程描述 | +| `title` | `String` | 站点标题 | +| `isTransit` | `Integer` | 是否过境 0=否 1=是 | +| `touristList` | `List` | 游客列表 | +| `name` | `String` | 姓名 | +| `pyFamilyName` | `String` | 姓拼音 | +| `pyGivenName` | `String` | 名拼音 | +| `dateOfBirth` | `String` | 出生日期 yyyy-MM-dd | +| `phoneNum` | `String` | 联系方式 | +| `sex` | `Integer` | 性别 0=男 1=女 | +| `age` | `Integer` | 年龄 | +| `isChild` | `Integer` | 是否儿童 0=否 1=是 | +| `hrProvince` | `String` | 户籍所在省 | +| `cardType` | `Integer` | 证件类型 1=身份证 2=护照 | +| `cardId` | `String` | 证件号码 | +| `cardValidTo` | `String` | 证件有效期至 yyyy-MM-dd | + +**响应** `Result` + +### ❌ ~~`POST` /admin/team-report/sync — 同步团队信息到监管平台~~ + +### 接口名称更新 + +| 方法 | 路径 | 原名称 → 新名称 | +| --- | --- | --- | +| `GET` | `/admin/team-report/{orderId}` | 获取同步记录 → **获取同步记录(含表单数据)** | + +--- + +
+📁 全部变更文件 (点击展开) + +``` +M hl-order-service/src/main/java/com/hulalv/teamreport/builder/TeamReportRequestBuilder.java +M hl-order-service/src/main/java/com/hulalv/teamreport/controller/AdminTeamReportController.java +A hl-order-service/src/main/java/com/hulalv/teamreport/dto/TeamReportFormDTO.java +M hl-order-service/src/main/java/com/hulalv/teamreport/entity/TeamReport.java +M hl-order-service/src/main/java/com/hulalv/teamreport/service/TeamReportService.java +M sql/team_report.sql +``` +
\ No newline at end of file