792 次代码提交

作者 SHA1 备注 提交日期
API Changelog Bot
77f2dcedbd docs(changelog): 2026-05-11 正式服 release #1945 (product-v2 + order-v2 + hl-ui, image_tag 9ffad0ee) 2026-05-11 18:07:46 +08:00
API Changelog Bot
7ce411a1b2 docs(changelog): 主题列表 createdByName 字段已上线测试服, 覆盖 heads-up 版
覆盖之前的 heads-up changelog (commit fd6e7b1) — 测试服 API 真测过, 字段 5/5 条全在 + 全非 null:
- 王骁/小松 (企微昵称)
- admin/test_admin (username fallback)

PR #1944 已合并到 dev, dep.test.1814.love 滚动部署完成 (42s 双实例 OK)。
前端 mmg 可以直接接 createdByName 字段。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 17:32:47 +08:00
API Changelog Bot
fd6e7b104f docs(changelog): heads-up 主题列表卡片新增 createdByName 字段(企微优先 fallback username)
Issue #1943,后端开发中。
GET /admin/product/line/list + GET /admin/product/line/{id} 仅追加字段,无 break。
前端可同步开始,展示「创建人:xxx」即可,null 时显示「-」。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 16:40:31 +08:00
API Changelog Bot
2daa58f49a docs(changelog): 产品版本 Step5 装备建议加「从模板选择」快速填充按钮(前端任务)
后端 0 改动,纯前端给现有 equipmentList 区域加快速填充按钮,
复用已有 GET /admin/equipment-template/enabled + GET /admin/equipment-template/{id}
两个接口拉模板填表单,保存时仍走 equipmentList(快照,与模板脱钩)。

模板整体绑定仍在产品线(主题)层,不动 PR #1782 设计。

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-11 16:18:50 +08:00
API Changelog Bot
9bc0f994f3 docs(2026-05-11): 产品名称长度 30 → 255 (PR #1940 + 前端联动通知)
- 11_fix_admin_product-name-extend-to-255.md
- 11_frontend_notice_admin_product-name-maxlength-30-to-255.md
2026-05-11 14:41:44 +08:00
API Changelog Bot
d656e0f7b4 followup(admin/product-v2): POI 搜索按城市限定 — 字段已在 itinerary[0].gatherPlace, 前端读这个即可 2026-05-11 14:23:52 +08:00
API Changelog Bot
1f1c15cedf feat(admin/product-v2): 行程详情新增 mileageWarnings 字段 + POI 选错事故复盘 (PR #1938, Issue #1937) 2026-05-11 14:07:16 +08:00
API Changelog Bot
cb6fa7328e fix notice: PR #1934 share 鉴权改多角色 union 查 CUSTOMIZER 已修 + QA 通过
根因:PermissionService.hasPermission 只查 currentRoleId 单角色 + Redis 24h 缓存,
与多角色业务不符。修复:ProductShareService 改读 AdminBasicDTO.roleKeys union 集合
查 CUSTOMIZER。wx (8 角色) + lixiaosong (单角色) 双正例 200 通过。
2026-05-11 10:39:35 +08:00
API Changelog Bot
e8b3d69fd1 fix notice: PR #1933 customizers 兜底 + CUSTOMIZER 加分享权限 已修复 + QA 通过
- 没绑企微的 admin 下拉显示空白 → 后端兜底回落 username (前端零改动)
- CUSTOMIZER 角色 share 接口 403 → V20260511_001 加 PRODUCT_SHARE 绑定
2026-05-11 10:26:12 +08:00
API Changelog Bot
b3d45d0aa3 P0 frontend notice: ShareModal label 直接 = enterpriseWechatName 不要 fallback (用户连续 2 次反馈)
后端 customizers 已返 enterpriseWechatName 中文真名,前端 mmg 已切到该接口,但 label 用 nickname || realName || username chain 命中不到字段,显示英文 username。
改 1 行 label = o.enterpriseWechatName 即可。
2026-05-09 22:35:50 +08:00
API Changelog Bot
1e3feabdb2 feat notice: customizers 接口加 enterpriseWechatName 字段 (PR #1930)
产品分享下拉对绑了企微的定制师返中文真名,前端 label 改 enterpriseWechatName ?? username 一行即可。
后端已合 dev + 部署测试服 + 11 条 DB↔接口抽样全绿。
2026-05-09 21:53:35 +08:00
API Changelog Bot
036a066deb refactor(admin): 合同方案删 3 法律字段走 agency 兜底 (PR #1929, Closes #1928) 前端必删 form item 2026-05-09 21:27:13 +08:00
API Changelog Bot
491e24904e fix(admin): 公司管理删除走 @TableLogic 真删 (PR #1927, Closes #1926) 前端 0 改动 2026-05-09 21:01:20 +08:00
API Changelog Bot
d83a8175ba fix notice: admin 产品分享 2 项回归 (中文括号 + fee_item 丢数据) 已修 (PR #1924)
PR #1919 接口上线后 QA 实测发现 2 个 P1 回归,PR #1924 已修复 + dev 已部署 +
测试服 round-trip 已验证。前端无需改动 (响应 schema 不变),通知前端心里有数。
2026-05-09 20:52:11 +08:00
API Changelog Bot
26885a2e27 frontend notice: 补 /admin/user/customizers QA 实测结果 + adminId JS 精度坑提示
- 测试服 round-trip 验证通过(20 条数据,字段全对,反例 401)
- adminId 同时返 Number(老 ID 1001/1002)和 String(雪花 ID),前端必须统一 String 处理防精度丢失
2026-05-09 19:59:42 +08:00
API Changelog Bot
49d18a8f9f frontend notice: admin 产品分享下拉换接口为 /admin/user/customizers (PR #1919 后端已上线)
ShareModal.vue 当前调 getUserPage({status:1}) 被 admin_user.status 英文常量白名单
拦截直接返空,导致目标用户下拉永远空、分享功能不可用。

PR #1919 已新增专用接口 /admin/user/customizers (无 status / 企微过滤),
前端切到该接口即可。详见 changelog 内契约 + 验收点。
2026-05-09 19:28:43 +08:00
API Changelog Bot
3973320606 fix(admin): 合同方案弹窗旅行社下拉新增 GET /admin/travel-agency/enabled-by-platform (PR #1922 + #1923, Closes #1921) 2026-05-09 19:00:57 +08:00
API Changelog Bot
b56239d609 feat(admin): 产品分享=复制产品给定制师后端实现 (PR #1919, Issue #1918)
GET /admin/user/customizers - 定制师下拉(无 status / 企微过滤)
POST /admin/product/item/{id}/share body {targetAdminId} - 复制产品+产品线给目标定制师
权限点 PRODUCT_SHARE 默认绑 SUPER_ADMIN / ADMIN

明确澄清: 与 09_frontend_notice_admin_product-share-remove-target-user-step.md
(已撤回) 不是同一个事情, 那个通知针对的是 url-scheme 老接口, 本通知是真正的
"分享产品" 新功能 (复制产品到目标定制师名下), mmg 不要混淆。
2026-05-09 18:06:09 +08:00
API Changelog Bot
e196f20b3c docs(user): AgreementService.saveByType 漏调 invalidateSource 致 mp 协议缓存不实时 (PR #1917) 2026-05-09 16:52:22 +08:00
API Changelog Bot
1aee259ee3 docs: 撤回 09_frontend_notice_admin_product-share-remove-target-user-step (基于过时 hl-ui 本地版本的误判,master 上无该问题) 2026-05-09 16:08:31 +08:00
API Changelog Bot
cc3452d4a6 docs(frontend-notice): admin 产品分享去掉选目标用户步骤,后端无改动 (前端修复) 2026-05-09 15:50:21 +08:00
API Changelog Bot
b6676fbb5f docs(common): @Valid 校验失败 toast 去掉字段名前缀,提示更友好 (PR #1916)
hl-common-log 全局 GlobalExceptionHandler 改动,影响 6 个服务所有 @Valid +
@RequestBody 接口的 400 校验响应文案。message 字符串从 "字段名: 文案" 变为
"仅文案"(多字段仍以 ;空格 分隔)。无前端改动情况下绝大多数 Toast(message)
直接更友好。提醒 mmg 全局搜 message.startsWith / split / match 等解析逻
辑确认无误。
2026-05-09 15:19:21 +08:00
wx
6870ffd178 feat(traveler-mismatch): TravelerTypeMismatch 通知迁移到通知中心 (PR #1915) 2026-05-09 15:07:53 +08:00
API Changelog Bot
66a46d8cf4 docs(frontend-notice): 服务管理编辑保存误调 POST 创建接口 (categoryCode 校验失败)
正式 admin 后台 service 编辑保存时报 'categoryCode: 分类编码不能为空',根因
是前端误调 POST /admin/service/item 而非 PUT /admin/service/item/{id} (后端
错误文案与 ServiceCreateRequest.categoryCode 的 @NotBlank message 字面完全
匹配)。后端 PATCH 语义正确,不动;通知 mmg 修前端,并自检 supplies/activity/
restaurant/cost/material 等同类模块。
2026-05-09 14:58:36 +08:00
wx
1dd018fb57 follow-up: admin 定价管理单房差前端回填 + 卡片列遗漏(后端正常) 2026-05-09 13:41:39 +08:00
API Changelog Bot
f8d53fb3b5 fix: mp 消息已读/未读 4 项 bug 修复 (PR #1912 / Issue #1911)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 12:25:15 +08:00
API Changelog Bot
cbadc13684 fix: mp 订单详情单房差展示修复 + 5 字段独立暴露 (PR #1906 + #1909)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 11:23:46 +08:00
API Changelog Bot
c935ef7905 refactor: admin 列表筛选纪律全面治理 (PR #1908)
- 后端 changelog: 8 处筛选范式治理, API 行为变化说明
- 前端 BUG 通知: DevTools 实测纠正 07 文件根因, 真实根因为
  3 个并发请求互相 cancel, 需 mmg 收敛 fetch 入口

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 11:07:55 +08:00
API Changelog Bot
4b8735e3cf fix: mp/admin /quote 接口补单房差遗漏 (PR #1905)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 10:32:05 +08:00
API Changelog Bot
61e5fe6968 feat: admin 订单详情接口暴露单房差金额字段 (PR #1904)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-09 10:06:30 +08:00
API Changelog Bot
d240ef0e96 feat: 价格日历加单房差字段 (PR #1901)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 21:31:20 +08:00
API Changelog Bot
ea6e629d52 feat(faq): 增加 typeCode 字段(字典 mp_faq_type) — 通知 mmg 前端补类型下拉 (PR #1898)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 18:43:35 +08:00
yaosutu
417e635ddf fix(mp): PR#1894 到达/返程批次校验错误文案修正
620001/620002 message 按 direction 动态拼词,
到达信息不再误显"返程信息"。
2026-05-08 17:46:25 +08:00
API Changelog Bot
fdc1e70931 feat(traveler): 出行人补全去 travelerType 按生日推断 + 不符企微提醒 (PR #1892, Issue #1889) 2026-05-08 17:21:52 +08:00
yaosutu
4c65455726 changelog(mp): PR#1878 到达/返程批次支持一起/多批两种模式 — POST /arrival 语义变更 + mode/modeLabel 新增 + batch bug 修复 + 错误码 580010 2026-05-08 16:23:22 +08:00
API Changelog Bot
7118f4f7ff chore: #1853 stub fix + #1860 Stage 1 diag changelog (PR #1879 #1881) 2026-05-08 15:40:44 +08:00
API Changelog Bot
d0429cbf6b fix(product-v2): 小童价格 add→subtract changelog (PR #1876, Closes #1870) 2026-05-08 14:57:29 +08:00
API Changelog Bot
84ff6db6b6 feat: admin 订单管理出发日期筛选 (PR #1872 / Issue #1865) 2026-05-08 13:55:29 +08:00
API Changelog Bot
ccf2a79ab0 fix(mp): /mp/message/summary 排序稳定化 (PR #1862, Closes #1857) 2026-05-08 11:24:40 +08:00
API Changelog Bot
1c8d318106 08 fix: banner/字典/精选评价 admin 改完立即生效 (PR #1855 + #1858) 2026-05-08 11:08:10 +08:00
API Changelog Bot
0cde478342 fix: 房型禁用校验维度修正 ROOM_TYPE (PR #1846, Closes wx/HL#1842)
实测证明同酒店 2 RoomType 提示产品数不同(2 vs 1), ROOM_TYPE 维度精确生效。
前端 API 行为无变化,业务码 ROOM_TYPE_DISABLE_IN_USE (310206) 不变。
2026-05-08 09:04:22 +08:00
API Changelog Bot
b7e9e754b8 refactor: 资源服务 ResourceReferenceCheckHelper 抽取 16 处 fail-closed 模板代码 (PR #1841,前端无感)
PR #1838 follow-up,11 service 16 处调用点 8-10 行模板 → 1 行 helper 调用,
净减 178 行;API 行为完全一致,前端无需改动。
测试服 round-trip 实测 ScenicSpot batchDelete 反例 deniedReasons 含 13 个中文产品名 
2026-05-08 00:48:38 +08:00
API Changelog Bot
eb91ded1ac feat: 通知 mmg - 资源删除/下架引用校验真生效 + 产品服务不可用 fail-closed (PR #1838 + hotfix #1839, Closes wx/HL#1821)
- /internal/product/resource-in-use endpoint 闭环
- ProductItineraryNodeMapper 兼容 resource_type NULL,用 (node_type OR resource_type) 双兜底
- 资源侧 16 处 fail-closed,新增业务码 100903 "产品服务不可用"
- 测试服 round-trip 实测 13 个中文产品名通过
2026-05-07 20:20:20 +08:00
API Changelog Bot
acb881a121 feat: 通知 mmg - 轮播图主题无数据修复 + 字典/菜单产品线改名为主题 (PR #1837) 2026-05-07 19:13:21 +08:00
API Changelog Bot
f839745b84 fix(user): /admin/user status \xe7\x99\xbd\xe5\x90\x8d\xe5\x8d\x95 \xe5\x85\x9c\xe5\xba\x95 (#1829 → PR #1834) 2026-05-07 18:10:13 +08:00
API Changelog Bot
87b07e839e docs: PR #1830 mp 返程批量校验前置友好化 + 前端排查指引 (Closes wx/HL#1828) 2026-05-07 17:50:12 +08:00
API Changelog Bot
fe9064da2f docs: PR #1827 编辑订单 depositAmount 等值跳过校验 (Closes wx/HL#1826) 2026-05-07 17:36:26 +08:00
API Changelog Bot
4741dd080d feat: 产品分享链接 adminId 锁定定制师 (#1814)
@mmg 接入: PC 分享弹窗 URL 拼 adminId; 小程序 detail onLoad 解析 +
sessionStorage; 创建订单+支付预下单透传 customizerId(number).
2026-05-07 17:27:37 +08:00
API Changelog Bot
268cd7f444 fix(product-v2): 创建产品基础信息 agencyId 未持久化 (#1822 → PR #1823) 2026-05-07 16:58:36 +08:00
wx
4e0bfb0081 docs(backend-feat): 测试报告产品复核第二轮 17 项必做校验完成 (2026-05-07)
来自 #1796 22 项产品复核分类后的 17 项"必做"已 6 PR 修复合并 dev:
- PR #1815 (Closes #1808) resource: 5 资源 batchDelete + 景区名重复 + 手机号重复
- PR #1816 (Closes #1809) product: 删除产品/预订条款 + 跨服务 Feign 不配 fallback
- PR #1817 (Closes #1810) refund: 拒绝必填原因 + 阶梯重叠 + 政策删除
- PR #1818 (Closes #1811) insurance: 删除方案 plan_id 反查
- PR #1819 (Closes #1812) contract: 删除方案跨服务 Feign 反查
- PR #1820 (Closes #1813) user: 探索分类删除/重名 + 电话格式

@mmg 看到请配合:
1. 删除按钮 catch 新业务码弹窗显示后端 message(含引用数)
2. 创建/更新表单 catch 重名/重号校验
3. PHONE 渠道兼容 400/800 客服热线

需重启 4 服务: hl-resource-service / hl-product-service-v2 / hl-order-service-v2 / hl-user-service
跨服务 Feign 部署顺序详见 changelog
2026-05-07 16:12:15 +08:00