From 8b1b3cd1cbea4773053c6e2b979cf873d2107922 Mon Sep 17 00:00:00 2001 From: API Changelog Bot Date: Wed, 3 Jun 2026 17:12:23 +0800 Subject: [PATCH] =?UTF-8?q?docs(changelog-v2):=20=E5=9B=BE=E6=A0=87?= =?UTF-8?q?=E5=BA=93=20changelog=20=E6=8C=89=E5=9B=A2=E9=98=9F=E6=A0=B7?= =?UTF-8?q?=E6=9D=BF=E9=80=90=E7=AB=AF=E7=82=B9=E9=87=8D=E5=86=99(11?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E8=AF=A6=E6=83=85+=E6=9E=9A=E4=B8=BE+?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E7=A0=81=E6=B1=87=E6=80=BB+=E4=B8=9A?= =?UTF-8?q?=E5=8A=A1=E8=BE=B9=E7=95=8C)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...390_图标库模块-新增接口-管理后台+小程序.md | 589 +++++++++++++++--- 1 file changed, 495 insertions(+), 94 deletions(-) diff --git a/changelogs-v2/2026-06/03_3390_图标库模块-新增接口-管理后台+小程序.md b/changelogs-v2/2026-06/03_3390_图标库模块-新增接口-管理后台+小程序.md index b4e353a..da42bbf 100644 --- a/changelogs-v2/2026-06/03_3390_图标库模块-新增接口-管理后台+小程序.md +++ b/changelogs-v2/2026-06/03_3390_图标库模块-新增接口-管理后台+小程序.md @@ -1,30 +1,37 @@ -# 【新增接口·管理后台 + 小程序】图标库模块(全模块首次推送,11 接口) +# 【新增接口·管理后台 + 小程序】图标库模块 11 接口(全模块首次推送 changelog) > **PR**: #3396(模块主体)+ #3398 / #3399(mp 端点公开化)+ #3401(上线后审计加固) > **服务**: hl-user-service | **更新时间**: 2026-06-03 > > **存放目录**: `changelogs-v2/2026-06/` -> **影响范围**: 管理后台「图标库」管理页(分类 + 图标 CRUD + SVG 上传解析);小程序/前端 图标渲染(公开只读查询) +> **影响范围**: 管理后台「图标库」管理页(分类 + 图标 CRUD + SVG 上传解析);小程序 / 前端 图标渲染(公开只读查询) --- ## ⚠️ 关键说明 -1. **两级结构(类似数据字典)**:一级「图标分类」(`icon_category`) + 二级「图标项」(`icon_item`)。图标项归属某分类编码 `categoryCode`。 -2. **SVG 直接存库(不走 OSS)**:图标内容是 SVG 字符串,直存数据库 `svg_content`(MEDIUMTEXT,上限 16MB,单图标后端限 256KB)。前端拿到的 `svgContent` 即可直接渲染。 -3. **上传解析与保存分两步**:先调 `POST /admin/icon/parse-svg` 上传 `.svg` 文件,后端读成字符串校验后**只返回字符串不落库**;前端拿到 `svgContent` 再连同 `color`/`size` 等填进保存表单调 `POST /admin/icon/item` 保存。 -4. **SVG 安全校验(重要)**:上传/保存的 SVG 会经服务端 XXE-safe 解析校验,**拒绝**含 `