hl-api-changelog/changelogs/2026-04/2026-04-18_home-menu-banner-productline.md
2026-04-18 13:54:13 +08:00

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 接口
  • 发布按钮调用 PUTpublish=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/bannerPUT /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-serviceJava 代码有改动)

5. 关联

  • PR #811 主需求:小程序首页第二屏品牌故事+主题卡片
  • PR #813 Gateway 路由补齐
  • PR #815 菜单 + 轮播图 PRODUCT_LINE本 PR