# 后端 feat 通知 — 餐厅 restaurant 加 icon_svg, 与 3 类对齐 **日期**: 2026-05-12 **类型**: 后端补齐 (PR #2106) **模块**: 资源服务 — 餐厅 **通知**: @mmg **前端是否需改动**: **需要** — 餐厅编辑弹窗加图标上传, 与景区/活动/服务统一 **严重性**: P3 --- ## 背景 PR #2100 只给景区/活动/服务 3 类加了 icon_svg, 漏了餐厅。本次补齐, 4 类资源对齐。 ## API 变化 餐厅 admin CRUD: `POST /admin/restaurant`, `PUT /admin/restaurant/{id}`, `GET /admin/restaurant/items`, `GET /admin/restaurant/{id}` **请求体新增可选字段**: `iconSvg` **响应体新增字段**: `iconSvg` (列表 + 详情都返回) 资源端 Internal Feign `GET /internal/mp/resource/batch-details` Restaurant 的 ResourceDetailDTO 也带 iconSvg 了。 ## 节点选餐厅时的默认带过去 `nodeType=RESTAURANT` + 不传 `emojiIcon` + 资源 iconSvg 非空 → 节点 emojiIcon 自动复制餐厅 iconSvg (复用 PR #2100 的 `ProductItineraryService.convertNode` 逻辑, 4 类资源全覆盖)。 ## 测试服实测 部署版本: dev 最新 (PR #2106) | 接口 | iconSvg 字段返回 | |------|------------------| | `GET /admin/scenic/spots` | ✅ | | `GET /admin/activity/items` | ✅ | | `GET /admin/service/items` | ✅ | | `GET /admin/restaurant/items` | ✅ | `flyway_schema_history.V20260512.005 success=1`, restaurant 表 icon_svg 列已建。 ## 前端 mmg 行动项 餐厅编辑弹窗加"上传 SVG 图标"入口, 字段名 `iconSvg`, 与景区/活动/服务 3 个弹窗的实现方式保持一致。