From 23c32d42ff80af0d668eb274046a082aa678e20c Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Wed, 6 May 2026 15:40:52 +0800 Subject: [PATCH] =?UTF-8?q?fix(agency):=20admin=20path=20=E7=BA=A0?= =?UTF-8?q?=E5=9B=9E=E8=AE=BE=E8=AE=A1=E5=86=BB=E7=BB=93=E7=9A=84=20/admin?= =?UTF-8?q?/travel-agency=20(PR=20#1715)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit PR #1710 定稿 changelog 误标 path 为 /admin/agency (副本 A 实施漂移), 现已纠回设计冻结的 /admin/travel-agency。 代码 + 网关路由 + 本文档全部对齐: - AdminTravelAgencyController + Qualification + Payment 三个 controller - hl-gateway/application.yml order-service 路由 - 旧 path /admin/agency 已关闭 (HTTP 404) 测试服 round-trip (2026-05-06 15:39): - GET /admin/travel-agency/enabled → code:200, 3 家公司列表 - GET /admin/travel-agency/page → code:200, 完整分页数据 - GET /admin/agency/* → HTTP 404 (旧 path 已下线) cc @mmg (前端联调请改 baseURL/请求 path) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../06_feat_agency_management_module.md | 56 +++++++++---------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/changelogs/2026-05/06_feat_agency_management_module.md b/changelogs/2026-05/06_feat_agency_management_module.md index 4151447..faae86d 100644 --- a/changelogs/2026-05/06_feat_agency_management_module.md +++ b/changelogs/2026-05/06_feat_agency_management_module.md @@ -2,9 +2,9 @@ **日期**: 2026-05-06 **通知对象**: @mmg (前端) -**关联 PR**: wx/HL #1710 (主) + #1711 (runtime hotfix) + #1712 (gateway 白名单 hotfix) +**关联 PR**: wx/HL #1710 (主) + #1711 (runtime hotfix) + #1712 (gateway 白名单 hotfix) + #1715 (admin path 纠回设计冻结的 travel-agency) **关联工单**: wx/HL #1707 closed -**测试服已部署 + round-trip 验证通过**: 2026-05-06 15:13 +**测试服已部署 + round-trip 验证通过**: 2026-05-06 15:13 (旧 path /admin/agency)、2026-05-06 15:39 (新 path /admin/travel-agency, PR #1715 部署完成) --- @@ -12,40 +12,40 @@ | 接口 | round-trip 验证 | |---|---| -| GET /admin/agency/page | ✅ 200 / 3 家明文 | -| GET /admin/agency/{id} | ✅ 200 / 完整公司信息 | -| GET /admin/agency/enabled | ✅ 200 / 下拉选项 | -| GET /admin/agency/{id}/qualification | ✅ 200 / 资质列表 | -| GET /admin/agency/{id}/payment | ✅ 200 / 支付配置列表 | +| GET /admin/travel-agency/page | ✅ 200 / 3 家明文 | +| GET /admin/travel-agency/{id} | ✅ 200 / 完整公司信息 | +| GET /admin/travel-agency/enabled | ✅ 200 / 下拉选项 | +| GET /admin/travel-agency/{id}/qualification | ✅ 200 / 资质列表 | +| GET /admin/travel-agency/{id}/payment | ✅ 200 / 支付配置列表 | | GET /mp/agency/primary | ✅ 200 / 主体公司公开信息(无需登录) | --- -## 二、后端接口 (网关 admin/agency) +## 二、后端接口 (网关 admin/travel-agency) -> 实际 controller `@RequestMapping` 路径是 `/admin/agency` (不是 /admin/travel-agency)。前端联调请用此路径。 +> ⚠️ **2026-05-06 15:35 更正 (PR #1715)**: 前一版本 changelog 误将 path 标为 `/admin/agency` (副本 A 实施漂移设计文档)。现已纠回设计冻结的 `/admin/travel-agency`,代码 + 网关路由 + 本文档全部对齐。**前端请用 `/admin/travel-agency` 调用**。 ### 1. 主体 CRUD (admin) | Method | Path | 说明 | |--------|------|------| -| GET | `/admin/agency/page?pageNum=&pageSize=&code=&agencyName=&status=` | 公司列表(分页) | -| GET | `/admin/agency/{id}` | 详情 | -| GET | `/admin/agency/enabled` | 启用列表(下拉用, `List<{id,code,agencyName}>`) | -| POST | `/admin/agency` | 新建 (SUPER_ADMIN) | -| PUT | `/admin/agency/{id}` | 编辑 | -| POST | `/admin/agency/{id}/disable` | 停用 (主体不可停, 引用产品也不可) | -| POST | `/admin/agency/{id}/set-primary` | 设为主体 (全局唯一 STORED 生成列+UNIQUE 兜底) | -| DELETE | `/admin/agency/{id}` | 软删 (SUPER_ADMIN, 主体/有引用拒绝) | +| GET | `/admin/travel-agency/page?pageNum=&pageSize=&code=&agencyName=&status=` | 公司列表(分页) | +| GET | `/admin/travel-agency/{id}` | 详情 | +| GET | `/admin/travel-agency/enabled` | 启用列表(下拉用, `List<{id,code,agencyName}>`) | +| POST | `/admin/travel-agency` | 新建 (SUPER_ADMIN) | +| PUT | `/admin/travel-agency/{id}` | 编辑 | +| POST | `/admin/travel-agency/{id}/disable` | 停用 (主体不可停, 引用产品也不可) | +| POST | `/admin/travel-agency/{id}/set-primary` | 设为主体 (全局唯一 STORED 生成列+UNIQUE 兜底) | +| DELETE | `/admin/travel-agency/{id}` | 软删 (SUPER_ADMIN, 主体/有引用拒绝) | ### 2. 资质子表 (admin/agency/{agencyId}/qualification) | Method | Path | 说明 | |--------|------|------| -| GET | `/admin/agency/{agencyId}/qualification` | 列表 | -| POST | `/admin/agency/{agencyId}/qualification` (multipart) | 上传 (name + file + sortOrder + remark + 可选 issueDate/expireDate) | -| PUT | `/admin/agency/{agencyId}/qualification/{id}` | 编辑 | -| DELETE | `/admin/agency/{agencyId}/qualification/{id}` | 删除 | +| GET | `/admin/travel-agency/{agencyId}/qualification` | 列表 | +| POST | `/admin/travel-agency/{agencyId}/qualification` (multipart) | 上传 (name + file + sortOrder + remark + 可选 issueDate/expireDate) | +| PUT | `/admin/travel-agency/{agencyId}/qualification/{id}` | 编辑 | +| DELETE | `/admin/travel-agency/{agencyId}/qualification/{id}` | 删除 | - 文件类型白名单: PDF / JPG / PNG / JPEG (后续可加字典 `qualification_file_type`) @@ -53,11 +53,11 @@ | Method | Path | 说明 | |--------|------|------| -| GET | `/admin/agency/{agencyId}/payment` | 列表 | -| POST | `/admin/agency/{agencyId}/payment` | 新增 (mchId + apiV3Key + mchSerialNo + publicKeyId + isDefault) | -| PUT | `/admin/agency/{agencyId}/payment/{paymentId}` | 编辑 (加密字段密文返回, 编辑用 placeholder) | -| DELETE | `/admin/agency/{agencyId}/payment/{paymentId}` | 删除 | -| POST | `/admin/agency/{agencyId}/payment/{paymentId}/set-default` | 设为默认 mchId | +| GET | `/admin/travel-agency/{agencyId}/payment` | 列表 | +| POST | `/admin/travel-agency/{agencyId}/payment` | 新增 (mchId + apiV3Key + mchSerialNo + publicKeyId + isDefault) | +| PUT | `/admin/travel-agency/{agencyId}/payment/{paymentId}` | 编辑 (加密字段密文返回, 编辑用 placeholder) | +| DELETE | `/admin/travel-agency/{agencyId}/payment/{paymentId}` | 删除 | +| POST | `/admin/travel-agency/{agencyId}/payment/{paymentId}/set-default` | 设为默认 mchId | ### 4. mp 端 (无需登录) @@ -80,7 +80,7 @@ - `ProductSaveReqVO` 必须传 `agencyId: Long` - `ProductDetailVO` / Resp 增加 `agencyId / mchId` 字段 -- 产品编辑页"所属公司"下拉调 `/admin/agency/enabled` +- 产品编辑页"所属公司"下拉调 `/admin/travel-agency/enabled` - V20260507_001 部署后 `product.agency_id NOT NULL`, 漏传校验失败 --- @@ -111,7 +111,7 @@ TOK=$(curl -sk -X POST "https://api.test.1814.love:9443/admin/auth/login" \ | python -c "import json,sys; print(json.load(sys.stdin)['data']['token'])") # 公司列表 -curl -sk "https://api.test.1814.love:9443/admin/agency/page?pageNum=1&pageSize=10" \ +curl -sk "https://api.test.1814.love:9443/admin/travel-agency/page?pageNum=1&pageSize=10" \ -H "Authorization: Bearer $TOK" # 主体公司公开信息 (mp 端用, 不需 token)