Skip to content
Malcolm edited this page Jul 17, 2016 · 10 revisions

图标接口

主要举出获取全部 icon 列表以及图标的增删改查方法。

获取全部已入库图标列表

本接口只能获取已入库的图标,如果需要获取待审核和其他状态的图标需要走审核接口或者获取用户已上传图标接口。本接口供搜索时使用,支持

  1. q=xxx 表示根据 xxx 来模糊查询图标
  2. iconId=123 表示查询 id 为 123 的图标
  3. iconIds=[1,2,3] 表示查询 id 数组中的图标

其中前两者都是在搜索图标时使用,第三个是在小车展开时查询图标使用。

GET /icons

Response

{
    "ret": true,
    "data":  [
        {
            "id": 3,
            "name": "",
            "path": " M829,738 L738,829 L512,603 L286,829 L195,738 L421,512 L195,286 L286,195 L512,421 L738,195 L829,286 L603,512",
            "oldId": null,
            "newId": null
        },
    ]
}

上传图标

上传图标至某图标库,这里只是上传到工作台,之后在工作台进行名称、tag 等的编辑再进行提交。将 icon 的 status 置为 0。

POST /user/icons

Parameters

这个参数形式是 form-data

名称 类型 描述
icons file svg 文件

Response

{
    "ret": true,
    "data": "上传图标成功"
}

提交图标

接口场景为将图标置入大库,表示上传图标并等待审核。此接口会将图标信息写入 icon 库,将 icon 的 status 置为 10。其中 icons 参数里需要传递图标名称、标签、图标后缀和图标 path。本次由于图标的名字、后缀都并不确定(可被大库管理员更改),因此并不生成 fontClass 字段,该字段仅存储图标的后缀。

PATCH /user/icons    

Parameters

名称 类型 描述
repoId number 大库id
icons array 图标数组

Input Example

{
    "repoId": 3,
    "icons": [
        {
            "id": 12,
            "name": "呵呵",
            "tags": "酒杯,酒杯,呵呵",
            "style": "-o",
        }
    ]
}

Response

{
    "ret": true,
    "data": "上传图标成功"
}

获取单个图标信息

图标弹窗使用的接口,可以获取图标的详细情况,包含上传人、所在大库、替换过的图标和被哪个图标替换等各种详细信息。

GET /user/icons/:iconId

Response

{
    "ret": true,
    "data": {
        "id": 3,
        "name": "",
        "path": " M829,738 L738,829 L512,603 L286,829 L195,738 L421,512 L195,286 L286,195 L512,421 L738,195 L829,286 L603,512",
        "tags": "你好,呵呵",
        "fontClass": "www-bi-o",
        "code": 61442,
        "oldIcon": {
            "id": 3,
            "name": "",
            "path": " M829,738 L738,829 L512,603 L286,829 L195,738 L421,512 L195,286 L286,195 L512,421 L738,195 L829,286 L603,512",
            "tags": "你好,呵呵",
            "fontClass": "www-bi-o",
            "code": 61442,
        },
        "newId": null,
        "repository": {
            "id": 1,
            "name": "无线大客户端",
            "alias": "mobile"
        }
    }
}

修改单个图标信息

这一操作依据不同权限进行处理,登录用户只能修改 tags,库管理员可以修改 name

PATCH /user/icons/:iconId

Parameters

名称 类型 描述
tags string 图标标签
name string 图标名称

Response

{
    "ret": true,
    "data": "修改图标信息成功"
}

删除审核失败的图标

只能删除当前用户上传的,审核失败的图标。

DELETE /user/icons/:iconId

Response

{
    "ret": true,
    "data": "删除图标成功"
}

获取用户已上传的全部图标

GET /user/icons

Response

{
    "ret": true,
    "data":  [
        {
            "id": 3,
            "name": "",
            "path": " M829,738 L738,829 L512,603 L286,829 L195,738 L421,512 L195,286 L286,195 L512,421 L738,195 L829,286 L603,512",
            "oldId": null,
            "newId": null
        },
    ]
}
Clone this wiki locally