2.9 KiB
2.9 KiB
首页第二屏菜单 + 轮播图绑定产品线
- 日期: 2026-04-18
- PR: #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)