From b212728b86bdea80750360c0c39bcc1b529dbb7d Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Sat, 18 Apr 2026 13:54:13 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E7=AC=AC=E4=BA=8C=E5=B1=8F?= =?UTF-8?q?=E8=8F=9C=E5=8D=95+=E8=BD=AE=E6=92=AD=E5=9B=BE=E7=BB=91?= =?UTF-8?q?=E5=AE=9A=E4=BA=A7=E5=93=81=E7=BA=BF(PR=20#815)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...2026-04-18_home-menu-banner-productline.md | 83 +++++++++++++++++++ 1 file changed, 83 insertions(+) create mode 100644 changelogs/2026-04/2026-04-18_home-menu-banner-productline.md diff --git a/changelogs/2026-04/2026-04-18_home-menu-banner-productline.md b/changelogs/2026-04/2026-04-18_home-menu-banner-productline.md new file mode 100644 index 0000000..f525eba --- /dev/null +++ b/changelogs/2026-04/2026-04-18_home-menu-banner-productline.md @@ -0,0 +1,83 @@ +# 首页第二屏菜单 + 轮播图绑定产品线 + +- **日期**: 2026-04-18 +- **PR**: [#815](https://git.1814.love:8443/wx/HL/pulls/815) (Closes #814) +- **状态**: 已合并 + 测试环境 DB/服务全部就绪 + +--- + +## 1. 管理端新增菜单(前端需对接) + +### sys_menu INSERT + +| menu_id | menu_name | parent_id | path | component | type | permission_code | +|---------|-----------|-----------|------|-----------|------|-----------------| +| 1108 | 首页第二屏 | 991 (首页配置) | `/mp-config/home/screen2` | `/mp-config/home/screen2` | M | `home:screen2:list` | +| 1109 | 编辑首页第二屏 | 1108 | - | - | B | `home:screen2:edit` | + +### 前端需要做的 +- 新建路由 `/mp-config/home/screen2` 对应组件/页面 +- 页面内表单字段对接 PR #811 的 `GET/PUT /admin/home-config/brand-story` 接口 +- 发布按钮调用 `PUT` 时 `publish=true`;草稿按钮 `publish=false` + +--- + +## 2. 轮播图新增 `PRODUCT_LINE` 跳转类型 + +### 字典扩展 + +``` +dict_type: banner_link_type +新增: {dict_label: "产品线", dict_value: "PRODUCT_LINE", sort_order: 6} +``` + +现完整字典值: + +| label | value | 备注 | +|-------|-------|------| +| 产品详情 | PRODUCT | link_id = product_id | +| 文章详情 | ARTICLE | link_id = article_id | +| 外部链接 | URL | link_url 填 https 链接 | +| 小程序页面 | MINI_PAGE | link_url 填 miniprogram 路径 | +| 无跳转 | NONE | - | +| **产品线** | **PRODUCT_LINE** | **link_id = product_line_id**(新增) | + +### 后端已支持 + +- `BannerService.VALID_LINK_TYPES` 已加 `PRODUCT_LINE` +- 保存接口 `POST /admin/banner` 和 `PUT /admin/banner/{id}` 接受 `linkType: "PRODUCT_LINE"` +- 测试环境验证: + ``` + POST /admin/banner {"linkType":"PRODUCT_LINE","linkId":"9999",...} + → 200 成功,linkType=PRODUCT_LINE 原样保存 + ``` + +### 前端需要做的 + +- 轮播图管理页(`/mp-config/home/banner`)表单的"跳转类型"下拉加一个 `产品线` +- 选中"产品线"时:`link_id` 字段变为"产品线选择器"(调用产品线列表接口 `GET /admin/product-line/enabled` 或类似) +- 小程序端渲染轮播图时:`link_type === "PRODUCT_LINE"` → 跳转到产品线详情页/主题列表页 + +--- + +## 3. 测试环境验证 + +- 菜单 INSERT:已执行,测试服务器 `sys_menu.menu_id IN (1108,1109)` + `sys_role_menu` 关联 `role_id=7` 到位 +- 字典 INSERT:已执行,`sys_dict_data.banner_link_type=PRODUCT_LINE` 到位 +- `user-service` 已滚动部署新代码(两实例 8081/8181) +- API 验证:`POST /admin/banner linkType=PRODUCT_LINE` ✅ 保存成功 + +--- + +## 4. 生产部署需要做的 + +- 跑 SQL `sql/menu_home_screen2_and_banner_product_line_20260418.sql`(幂等) +- 重新部署 `hl-user-service`(Java 代码有改动) + +--- + +## 5. 关联 + +- PR #811 主需求:小程序首页第二屏品牌故事+主题卡片 +- PR #813 Gateway 路由补齐 +- PR #815 菜单 + 轮播图 PRODUCT_LINE(本 PR)