API Changelog Bot
afd7e0dfa8
feat(auth): admin refresh token 双令牌轮转机制 (PR #2285 + #2287 )
...
测试服 9 步 curl 真测 PASS,通知前端 mmg 接 axios 401 拦截器自动续期。
Closes 通知 #2283
2026-05-14 17:58:39 +08:00
API Changelog Bot
e79c5dee2b
feat: admin 列表加 productLineId 参数自动 resolve seasons (PR #2281 / Issue #2278 )
...
紧接 #2229/#2232/#2269 admin 列表季节系列。前端从产品上下文只有 productLineId,
让后端 Feign resolve productLine.seasons[0] 自动注入 query.seasons, 走现有 #2229
切换链路。前端只需多传 productLineId, 不必再算 seasons[0]。
5 场景兼容: 只传 seasons/只传 productLineId/两个都传(seasons 优先)/都不传(向前兼容)/
Feign 异常 fail-open 降级走本体不 500。
测试服三态对比 PASS:
- 无参 → oss 本体
- productLineId=autumn 产品线 → unsplash 秋色 + 秋色画廊
- productLineId=summer 产品线 → unsplash 夏景 + 自驾天堂
notify @mmg (前端只需多传 productLineId)
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 17:14:39 +08:00
API Changelog Bot
f2bcc3a5e4
feat: MP+admin 产品详情返回备品清单含 coverUrl ( #2266 )
2026-05-14 16:31:16 +08:00
API Changelog Bot
36a4f810b0
feat: 季节系列 4 份 changelog (PR #2262/#2263+#2271/#2269 + 前端补传 seasons 通知 @mmg )
...
- 14_feat_admin_activity_season_admin_crud.md (PR #2262 , Issue #2257 ):
补 ActivitySeasonController admin CRUD, 修 PR #2232 漏做配置入口
- 14_feat_admin_list_season_highlights_field.md (PR #2269 , Issue #2267 ):
ScenicSpotListVO/ActivityListVO 加 seasonHighlights 字段
- 14_feat_mp_node_media_season_pipeline_through.md (PR #2263+#2271, Issue #2256+#2268):
节点封面/轮播图/视频按 productLine.seasons[0] 季节回落, MP Assembler 接通
- 14_frontend_admin_list_should_pass_seasons_param.md:
前端补传 seasons 参数给 /admin/scenic/spots 和 /admin/activity/items
后端能力早做了 (PR #2229/#2234), 前端没传所以一直没生效
notify @mmg
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 16:30:23 +08:00
API Changelog Bot
9947af26d0
chore(amap): mmg 决定前端自改 citylimit, 后端代理接口转备用
2026-05-14 16:01:31 +08:00
API Changelog Bot
a66279a766
feat(amap): 后端代理高德 POI 搜索 4 PR 全合 + 测试服真测 PASS, 通知 mmg 切前端 (Issue #2249 )
2026-05-14 15:47:21 +08:00
API Changelog Bot
50841c218f
feat: 节点 description 按产品线 seasons[0] 回填季节亮点 changelog (PR #2250 / Issue #2243 )
...
紧接 #2229/#2232/#2096, 节点 description 为空时回填来源由"本体 highlights"
升级为"scenic_season/activity_season.highlights(按 productLine.seasons[0]) → 回落本体"。
独立快照保留: 非空 description 不会被覆盖, 用户手填永远保留。
notify @mmg
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 15:11:24 +08:00
API Changelog Bot
698a3f03ed
feat: 游玩项目季节过滤 + 节点季节标签 changelog (PR #2234 / Issue #2232 )
2026-05-14 11:34:12 +08:00
API Changelog Bot
546d22454a
chore(changelog): mappicker citylimit BUG 二次反馈,优先级升 urgent
...
用户 2026-05-14 再次复现:某表单「结束 *」字段输入「1」候选项全锁呼伦贝尔市。
说明 MapPicker.vue citylimit:true 至今未改,且组件被复用范围超过资源管理 EditModal。
追加新场景描述与验证项,priority high → urgent,frontmatter 加 reopened_at。
2026-05-14 11:27:20 +08:00
API Changelog Bot
60544ca71c
feat: 景区季节过滤 + 节点季节标签 changelog (PR #2229 / Issue #2227 )
2026-05-14 11:02:59 +08:00
API Changelog Bot
e4605c3755
frontend-feature: 行程保障模板编辑保障项加拖拽排序 (notify @mmg )
...
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 10:43:06 +08:00
API Changelog Bot
8ef595e115
docs(changelog): 产品版本列表创建人显示企业微信中文名 (PR #2218 , Issue #2217 )
...
ProductQueryService.enrichCreatedByName 与主题列表 ProductLineService 对齐:
优先 wechatName, fallback username。前端契约不变, 无需改前端代码。
测试服 54 条记录全量回扫:
- 10 个 unique createdBy: 8 个解析为企微中文名 (lixiaosong→小松/wangxiao→王骁/jiangyulian→蒋雨莲/mimingguang→米明光/xulai→徐莱), 2 个 fallback username (admin/test_admin 未绑企微)
- 0 条 createdByName=null
@mmg
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 17:44:54 +08:00
API Changelog Bot
8a2fdb250c
docs(changelog): 12301 合同补充约定字数上限 2000 → 5000 (PR #2187 , Issue #2186 )
...
通知前端 @mmg : hl-ui 三处 maxlength=2000 → 5000:
- 补充约定模板编辑弹窗
- 合同方案补充条款输入框
- 创建/报备合同补充约定内容输入框
测试服 3/3 case 已验证 (4500/5001/2001 字符 boundary).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 14:05:00 +08:00
API Changelog Bot
d7d93b0030
add: C端价格日历支持月份缺省回退最近可售月 (PR #2172 , Closes #2167 )
...
接口入参 month/startDate/endDate 全改为可选, 响应新增 month 字段
测试服 10/10 case 端到端通过 (含 CUSTOM + GROUP 缺省入参真测)
2026-05-13 11:02:04 +08:00
API Changelog Bot
998d90d425
frontend-bug: 主题列表点搜索第一回不生效(路由守卫取消了自家请求)
2026-05-13 09:53:44 +08:00
API Changelog Bot
81104fc6d9
frontend-bug(product-v2): 卖点快速理解加入游玩项目时未回显项目亮点 (notify @mmg )
2026-05-13 09:52:07 +08:00
API Changelog Bot
bbb120f374
fix(product-v2): 行程清空字段修复 (PR #2122 / Closes #2119 )
2026-05-12 17:38:48 +08:00
wx
303ce022e2
add: 资源下架放开被产品引用校验 + in-use 预览接口 (Issue #2115 )
2026-05-12 17:38:23 +08:00
API Changelog Bot
17e30c25b5
docs(changelog): 12_fix_product_v2_schedule_child_zero_deposit_bypass
...
PR #2117 / Issue #2116 — 班期创建 child=0 跳过订金校验, 与价格日历对齐.
3 case 测试服真测过, 前端无需改动.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 17:00:17 +08:00
API Changelog Bot
5442777489
docs(changelog): 12_fix_product_v2_toddler_discount_db_clear_on_update
...
PR #2111 / Issue #2110 — 修补 #2107 漏 UPDATE 路径; MP NOT_NULL 默认跳过 null
导致 child=0 时 toddler_discount DB 列残留. @TableField(updateStrategy=IGNORED)
强制 UPDATE 写入, 测试服 4 场景 DB 真测通过. 前端无需改动.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 16:45:23 +08:00
API Changelog Bot
424ae19438
fix(product-v2): 小童优惠校验+兜底归一化, 测试服 4 case 端到端通过 (PR #2102+#2107)
...
- 撤回 12_frontend_bug 误诊断 changelog (业务规则澄清后是后端 fix 不是前端 bug)
- 新发 12_fix backend changelog: 410113 toddler<0 + step 0 兜底 child=0→toddler=null
- 端到端 curl 4 case + DB 落库证据完整
- 前端联动 placeholder/disabled/max/watch 写明给 @mmg
2026-05-12 16:20:33 +08:00
API Changelog Bot
cb28ae8883
12_feat restaurant icon_svg align with 3 resource types (PR HL#2106)
2026-05-12 16:16:36 +08:00
API Changelog Bot
5449ace86e
frontend-bug(price-interval): 儿童=0 时小童优惠看起来 disabled 且回显 0 — CSS+语义+单日覆盖三个根因
2026-05-12 15:51:10 +08:00
API Changelog Bot
6ca3467685
12_feat resource icon_svg + node emojiIcon default copy (PR HL#2100)
2026-05-12 15:48:07 +08:00
API Changelog Bot
f123422ecc
frontend-bug(map-picker): 地图选点 citylimit 锁死搜索范围,阿尔山等异地搜不到
2026-05-12 15:37:56 +08:00
API Changelog Bot
ebd55c02de
12_feat node default description from resource highlights (PR HL#2096)
2026-05-12 15:20:50 +08:00
API Changelog Bot
586ba5c6db
12_refactor drop iconSvg+sellingPoint reuse description (PR HL#2091 + hotfix #2092 )
2026-05-12 14:44:04 +08:00
API Changelog Bot
2f33d84db6
12_fix custom-canedit-after-order (PR HL#2085)
2026-05-12 13:30:04 +08:00
API Changelog Bot
c872297dea
2026-05-12: 撤销+重发 - icon 字段从 material_id 改 SVG 文本 (PR #2087 , Refs #2068 )
...
前一份 12_frontend_notice_admin_resource-product-icon-selling-point.md 提到的
iconMaterialId / iconUrl 两字段已撤销, 后端最终用单字段 iconSvg (TEXT) 直接存
SVG 源码. sellingPoint 字段保持不变.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 12:00:26 +08:00
API Changelog Bot
19a8f5ec20
2026-05-12: 资源服务 + 产品行程节点 新增「图标」「卖点简介」2 字段 ( #2068 , PR #2076/#2077/#2081)
...
资源 3 类(景区/活动/服务) + 产品行程节点 各加 icon_material_id + selling_point.
产品节点保存时, 前端没传则从资源默认值复制, 前端传值优先, 永不回写资源.
mp 端「今日体验」+ admin 端「行程编排/产品卖点」共用 product_itinerary_node 数据.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 11:30:46 +08:00
API Changelog Bot
3fccc2381b
fix: 产品 V2 编辑两项修复(里程被覆盖 + 儿童售价=0)
...
PR #2067 (commit d30bd995):
- #2064 行程编排日里程手动改后保存被高德自动计算覆盖
- #2066 价格日历批量设置允许儿童售价等于 0(儿童免费)
测试服 admin token round-trip 4 case 全过(2026-05-12 10:14-10:15)。
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-12 10:18:28 +08:00
API Changelog Bot
0745ea7a85
docs(changelog): release 文档改成人话版
2026-05-11 18:09:24 +08:00
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