departments


URI

<portalConfig_uri>/departments[.<format>]

支持的方法

GETPOSTPUTHEAD

父资源

portalConfig

子资源

departmentNamemoveDepartmentdepartmentMembersdepartmentAdmins

介绍

departments 资源是组织结构配置资源,通过 GET 请求可以获取门户中所有的组织部门信息,通过 POST 请求可以添加一个部门,通过 PUT 请求,可以模拟 DELETE,删除部门及其子部门,支持批量删除。

支持的方法:

支持的表述格式:RJSON、JSON、HTML、XML。

资源层次

HTTP 请求方法

对如下 URI 执行 HTTP 请求,以 rjson 输出格式为例加以说明,其中,supermapiportal 是服务器名。

http://supermapiportal:8190/iportal/manager/iportalconfig/departments.rjson

GET 请求

获取门户中所有的组织部门信息。

请求参数

参数未设置,默认返回按照部门的创建时间升序排序的部门列表信息,参数设置后,可根据设置的参数返回组织部门列表信息, 请求参数必须包含在 URI 中。

字段 类型 说明
orderBy DepartmentOrderBy 按部门的排序字段查询。
orderType OrderType 按排序时升序/降序查询。

响应结构

对 departments 资源执行 GET 请求,返回门户中所有的组织部门列表信息,由以下字段组成:

字段 类型 说明
childs List<DepartmentLinkedNode> 部门的子部门列表信息。
id Integer 部门的 ID 标识。
name String 部门的名称。
createTime long 部门创建时间。
orderNum Integer 部门的序号,用于排序的字段。

响应示例

对 departments 资源:http://localhost:8190/iportal/manager/iportalconfig/departments.rjson 执行 GET 请求,获取门户中所有的组织部门信息,返回 rjson 格式的资源表述如下:

[

    {

        "childs": [

            {

                "childs": [],

                "createTime": 1487663516907,

                "id": 2,

                "name": "a县环保局",

                "orderNum": 11

            },

            {

                "childs": [],

                "createTime": 1487663531869,

                "id": 3,

                "name": "b县环保局",

                "orderNum": 12

            }

        ],

        "createTime": 1487663320292,

        "id": 1,

        "name": "A市环保局",

        "orderNum": 1

    }

]

如果希望获取指定的部门列表信息,如获取按部门序号降序排序,则需设置 orderBy=orderNum,orderType=DESC。即对 departments 资源:http://localhost:8190/iportal/manager/iportalconfig/departments.rjson?orderBy=orderNum&orderType=DESC 执行 GET 请求,则返回的 rjson 资源表述如下:

[

    {

        "childs": [

            {

                "childs": [],

                "createTime": 1487663531869,

                "id": 3,

                "name": "b县环保局",

                "orderNum": 12

            },

            {

                "childs": [],

                "createTime": 1487663516907,

                "id": 2,

                "name": "a县环保局",

                "orderNum": 11

            }

        ],

        "createTime": 1487663320292,

        "id": 1,

        "name": "A市环保局",

        "orderNum": 1

    }

]

POST 请求

添加一个部门。

请求参数

发送请求时,需要在请求体中传递如下参数:

名称 类型 含义
name String 部门名称。
parentId Integer 新添加部门的上一级部门 ID。
orderNum Integer 部门的序号,用于排序的字段。

响应结构

返回的资源表述结构如下:

字段 类型 说明
postResultType PostResultType 添加一个部门。
newResourceID String 添加部门的 ID。
succeed boolean 添加部门是否成功。
newResourceLocation String 添加部门的 url。

响应示例

对 departments 资源:http://localhost:8190/iportal/manager/iportalconfig/departments.rjson 执行 POST 请求,添加一个部门,发送请求体如下:

{

    "name": "c县环保局",

    "orderNum": 16,

    "parentId": 1

}

则返回的 rjson 格式响应结果如下:

{

    "postResultType": "CreateChild",

    "newResourceID": "5",

    "succeed": true,

    "newResourceLocation": "http://192.168.120.40:8090/iportal/manager/iportalconfig/departments/5.json"

}

PUT 请求

模拟 DELETE,删除部门及其子部门,支持批量删除。请求体中传递的是需要删除部门的 id 数组。

响应结构

返回的资源表述结构如下:

字段 类型 说明
succeed boolean 删除部门是否成功。
error Httperror 出错信息,如果删除部门成功,则没有本字段。

响应示例

对 departments 资源:http://localhost:8190/iportal/manager/iportalconfig/departments.rjson 执行 PUT 请求,删除一个部门及其子部门,发送请求体如下:

[5]

则返回的 rjson 格式的资源表述如下:

{"succeed": true}

HEAD 请求

返回跟 GET 请求一样的 HTTP 响应头,但是没有响应实体。可以在不必传输整个响应内容的情况下,获取包含在响应消息头中的元数据信息。元数据信息包括媒体类型,字符编码,压缩编码,实体内容长度等。

HEAD 请求可以用来判断 departments 资源是否存在,或者客户端是否有权限访问 departments 资源。通过对加.<format>的 URI 执行 HEAD 请求,还可以快速判断 departments 资源是否支持<format>格式的表述。

请参见