You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
14 lines
865 B
14 lines
865 B
|
1 month ago
|
# 04 — 图标上传
|
||
|
|
|
||
|
|
**What to build:** `POST /api/resources/icon/upload`(multipart/form-data)接收图片文件,校验格式(png/jpg/gif/svg/webp)和大小(≤500KB),调 crm-file 模块的 `FileApi` 上传到 MinIO,返回可访问的预览 URL。前端将 URL 写入节点的 `icon` 字段。不合法的文件返回明确错误信息。
|
||
|
|
|
||
|
|
**Blocked by:** 01(需要 SysMenu icon 字段 + 依赖 crm-file 的 FileApi 接口可用)。
|
||
|
|
|
||
|
|
**Status:** ready-for-agent
|
||
|
|
|
||
|
|
- [ ] `POST /api/resources/icon/upload`,参数 `file`(multipart)
|
||
|
|
- [ ] 格式校验:拒绝非 png/jpg/gif/svg/webp 扩展名,返回错误
|
||
|
|
- [ ] 大小校验:拒绝超过 500KB 的文件,返回错误
|
||
|
|
- [ ] 调用 `FileApi` 上传,返回 `{ "url": "https://..." }`
|
||
|
|
- [ ] TDD 测试覆盖:合法图片上传成功返回 URL、非法格式拒绝、超大小拒绝
|