Skip to content

部门接口 ​

简介 ​

部门接口支持对通讯录部门进行查询、添加、修改等相关操作。

开发前,请仔细阅读 开发指南。

接口调用 ​

1. 获取部门列表 ​

【注意】该接口对非管理员账户仅能获取到企业下拥有访问权限的部门信息,对于管理员账户则能获取到企业下所有部门的信息。

请求地址 ​

http
GET /department?Ids=1,2

参数说明 ​

参数是否必须说明
Ids否可指定要获取的部门Id,支持以逗号分隔的多部门Id
部门查询接口支持丰富的条件过滤参数,请参见支持的查询参数附录 ​

返回结果 ​

json
{
    "offset": 0,
    "total": 0,
    "results": [
        {
            "id": 1,
            "code": "0101",
            "name": "研发部",
            "companyId": 1,
            "companyCode": "01",
            "companyName": "北京易点易动科技有限公司",
            "disabled": false
        }
    ],
    "meta": {}
}
参数说明
offset当前结果对于首条结果的偏移量,指定分页查询时不为0
total所有符合查询条件的查询结果数量,指定需要结果记录数量时不为0
results符合查询条件的部门详情集合
meta其他信息

2. 创建部门 ​

【注意】使用该接口创建部门将会使创建者自动拥有对其访问的权限。

请求地址 ​

http
POST /department

请求示例 ​

json
{
    "Code":"0101",
    "Name":"研发部",
    "CompanyCode":1,
    "SuperiorDepartmentCode":"01"
}

参数说明 ​

参数是否必须说明
Code是部门编码
Name是部门名称
CompanyCode是所属公司编码
SuperiorDepartmentCode否上级部门编码

返回结果 ​

json
{
    "id": "1"
}

结果说明 ​

参数说明
id部门Id

3. 更新部门 ​

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的部门信息,对于管理员账户则能更新企业下所有部门的信息。

请求地址 ​

http
PUT /department
POST /department/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例 ​

json
{
    "CompanyCode":"01",
    "Code":"0101",
    "Name":"研发部"
}

参数说明 ​

参数是否必须说明
Code是部门编码
Name是部门名称
CompanyCode是所属公司编码

返回结果 ​

json
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

4. 更新部门编码 ​

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的部门信息,对于管理员账户则能更新企业下所有部门的信息。

请求地址 ​

http
PUT /department/code
POST /department/code/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例 ​

json
{
    "CompanyCode":"01",
    "CurrentCode":"0101",
    "NewCode":"0101_new"
}

参数说明 ​

参数是否必须说明
CurrentCode是当前使用中的部门编码
NewCode是预修改的部门编码
CompanyCode是所属公司编码

返回结果 ​

json
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

5. 删除部门 ​

【注意】该接口对于非管理员账户仅能删除企业下其拥有访问权限的部门,对于管理员账户则能删除企业下所有部门。

请求地址 ​

http
DELETE /department
POST /department/delete

对于不支持DELETE请求的网络环境,请尝试使用备份的POST请求地址

请求示例 ​

json
{
    "CompanyCode":"01",
    "Code":"0101"
}

参数说明 ​

参数是否必须说明
CompanyCode是所属公司编码
Code是部门编码

返回结果 ​

json
{}

对于成功删除的请求,该接口仅返回HTTP 200 OK

附加信息 ​

下列条件之一成立时,无法对指定的部门进行删除操作

  1. 该部门下存在子部门信息
  2. 该部门下存在资产信息
  3. 该部门下存在领用单据
  4. 该部门下存在调拨单据
  5. 该部门下存在实物信息变更单据

6. 设置部门的可用性状态 ​

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的部门信息,对于管理员账户则能更新企业下所有部门的信息。

请求地址 ​

http
PUT /department/{code}/availability
POST /department/{code}/availability/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例 ​

json
{
    "CompanyCode":"01",
    "Enabled":1
}

参数说明 ​

参数是否必须说明
code是部门编码
CompanyCode是所属公司编码
Enabled是部门的可用性状态,0和1分别表示禁用和启用

返回结果 ​

json
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

7. 设置部门的上级部门 ​

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的部门信息,对于管理员账户则能更新企业下所有部门的信息。

请求地址 ​

http
PUT /department/{code}/superior
POST /department/{code}/superior/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例 ​

json
{
    "CompanyCode":"01",
    "SuperiorDepartmentCode":1
}

参数说明 ​

参数是否必须说明
code是部门编码
CompanyCode是所属公司编码
SuperiorDepartmentCode是上级部门编码(将此参数设置为空,即表示将部门设置成指定公司内的最上级机构)

返回结果 ​

json
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

8. 变更部门的所属公司 ​

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的部门信息,对于管理员账户则能更新企业下所有部门的信息。

请求地址 ​

http
PUT /department/{code}/company
POST /department/{code}/company/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例 ​

json
{
    "CurrentCompanyCode":"01",
    "NewCompanyCode":1
}

参数说明 ​

参数是否必须说明
code是部门编码
CurrentCompanyCode是部门当前所属公司编码
NewCompanyCode是预修改部门至所属公司的编码

返回结果 ​

json
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

附录 ​

1. 支持的查询参数 ​

如无特别说明,下列操作对于查询实体对象中的任意属性均适用。使用时只需将其追加至请求的querystring中即可。对实体对象中不存在的属性进行操作将会得到不可预期的结果。

  • 分页
    • skip={数字} 跳过指定条数的记录数
    • take={数字} 取出指定条数的记录数(注:最大值为1500,即单页最多返回1500条数据)
    • include=total 需要返回记录总数
  • 排序
    • orderBy=[-]{属性名称},[-]{属性名称} 返回结果按指定属性排序,在名称前加”-“表示按倒序排序。多个属性的排序可使用逗号分隔。如:orderBy=-Id,Name,-Age
  • 条件过滤
    • 不等于

      • {属性名称}!={值} 如:Id!=1
    • 大于等于

      • >{属性名称}={值} 如:>Id=1
    • 大于

      • {属性名称}>={值} 如:Id>=1
    • 小于

      • <{属性名称}={值} 如:<Id=1
    • 小于等于

      • {属性名称}<={值} 如:Id<=1
    • In

      • {属性名称}In={值,值,值} 属性的值需包含在指定的集合中,如:IdIn=1,2,3
    • Between

      • {属性名称}Between={值,值} 属性的值需处于指定的区间之间,仅支持数字,如: IdBetween=1,3
    • 字符串包含指定字符

      • {属性名称}Contains={值} 如:nameContains=abc
    • 字符串以指定字符开头

      • {属性名称}StartsWith={值} 如:nameStartsWith=abc
    • 字符串以指定字符结尾

      • {属性名称}EndsWith={值} 如:nameEndsWith=abc

2. 数据实体格式 ​

1. 部门数据对象格式 ​
属性名称说明
id部门Id
code部门编码
name部门名称
companyId所属公司Id
companyCode所属公司编码
companyName所属公司名称
hierarchy以竖线分割的部门Id表示部门的层级关系
disabled是否已禁用