成员接口
简介
成员接口支持对通讯录成员进行查询、添加、修改等相关操作。
开发前,请仔细阅读 开发指南。
接口调用
1. 获取员工列表
请求地址
http
GET /employee?Ids=xxxx,xxxx参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| Ids | 否 | 可指定要获取的员工Id,支持以逗号分隔的多员工Id |
员工查询接口支持丰富的条件过滤参数,请参见支持的查询参数附录
返回结果
json
{
"offset": 0,
"total": 0,
"results": [
{
"id": "1182468b-248b-4622-9be3-18ba04b84b9e",
"enterpriseId": 1,
"employeeNo": "001",
"employeeName": "张三",
"companyId": 1,
"companyCode": "01",
"companyName": "北京易点易动科技有限公司",
"departmentId": 1,
"departmentCode": "0101",
"departmentName": "研发部",
"phoneNumber": "138****8888",
"email": "t**t@test.com",
"status": 1,
"createdDate": "1539049334",
"nameJianPin": "zs",
"nameQuanPin": "zhangsan",
"boundToWeChat": 0,
"culture": "zh-CN"
}
],
"meta": {}
}| 参数 | 说明 |
|---|---|
| offset | 当前结果对于首条结果的偏移量,指定分页查询时不为0 |
| total | 所有符合查询条件的查询结果数量,指定需要结果记录数量时不为0 |
| results | 符合查询条件的员工详情集合 |
| meta | 其他信息 |
2. 创建员工
【注意】该接口创建的员工均为在职状态 ,因为通常情况下创建离职状态员工是无意义的操作。
请求地址
http
POST /employee请求示例
json
{
"employeeNo": "001",
"employeeName": "张三",
"companyCode": 1,
"departmentCode": 1,
"phoneNumber": "138****8888",
"email": "t**t@test.com",
"status": "onjob",
"culture": "zh-CN"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| employeeNo | 否 | 员工工号 |
| employeeName | 是 | 员工姓名 |
| companyCode | 是 | 员工所属公司编码 |
| departmentCode | 否 | 员工所属部门编码 |
| phoneNumber | 否 | 员工电话号码 |
| 否 | 员工电子邮件地址 | |
| status | 否 | 员工在职状态,"onjob"和"dimission"分别表示在职和离职 |
| culture | 否 | 员工语言文化设置信息 |
返回结果
json
{
"Id": "1182468b-248b-4622-9be3-18ba04b84b9e",
"EmployeeNo": "001"
}结果说明
| 参数 | 说明 |
|---|---|
| Id | 员工Id |
| employeeNo | 员工工号 |
3. 更新员工
请求地址
http
PUT /employee
POST /employee/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"EmployeeNo": "001",
"EmployeeName": "张三",
"Culture": "zh-CN"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| employeeNo | 是 | 员工工号 |
| employeeName | 否 | 员工姓名 |
| culture | 否 | 员工语言文化设置信息 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
4. 更新员工工号
请求地址
http
PUT /employee/no
POST /employee/no/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"CurrentEmployeeNo": "001",
"NewEmployeeNo": "002"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| CurrentEmployeeNo | 是 | 当前使用的员工工号 |
| NewEmployeeNo | 否 | 预更新的员工工号 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
5. 变更员工所属公司部门
请求地址
http
PUT /employee/{EmployeeNo}/organization
POST /employee/{EmployeeNo}/organization/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"NewCompanyCode": "02",
"NewDepartmentCode": "0202"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号 |
| NewCompanyCode | 是 | 预更新的公司编码 |
| NewDepartmentCode | 是 | 预更新的部门编码 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
6. 更新员工电话号码
请求地址
http
PUT /employee/{EmployeeNo}/phone
POST /employee/{EmployeeNo}/phone/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"Phone": "13888888888"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号 |
| Phone | 是 | 员工电话号码 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
7. 更新员工Email地址
请求地址
http
PUT /employee/{EmployeeNo}/email
POST /employee/{EmployeeNo}/email/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"Email": "test@example.com"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号 |
| 是 | 员工Email地址 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
8. 删除员工
请求地址
http
DELETE /employee
POST /employee/delete对于不支持DELETE请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"EmployeeNo":["001","002"]
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号,支持以逗号分隔的多员工工号 |
返回结果
json
{}对于成功删除的请求,该接口仅返回HTTP 200 OK
附加信息
下列条件之一成立时,无法对指定的员工进行删除操作
- 该员工存在资产信息
9. 设置员工的在职状态
请求地址
http
PUT /employee/{EmployeeNo}/status
POST /employee/{EmployeeNo}/status/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"Status":"onjob"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号 |
| Status | 是 | 员工的在职状态,"onjob"和"dimission"分别表示在职和离职 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
10. 设置员工的微信绑定状态
请求地址
http
PUT /employee/{EmployeeNo}/bindtowechat
POST /employee/{EmployeeNo}/bindtowechat/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"Status":1
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号 |
| Status | 是 | 微信绑定状态,0和1分别表示未绑定和绑定 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
11. 设置员工登录密码
请求地址
http
PUT /employee/{EmployeeNo}/passwordPOST /employee/{EmployeeNo}/password/put对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址
请求示例
json
{
"password": "EXAMPLE_PASSWORD"
}参数说明
| 参数 | 是否必须 | 说明 |
|---|---|---|
| EmployeeNo | 是 | 员工工号 |
| Password | 是 | 登录密码 |
返回结果
json
{}对于成功更新的请求,该接口仅返回HTTP 200 OK
附加信息
该接口仅支持管理员用户调用
附录
1. 支持的查询参数
如无特别说明,下列操作对于查询实体对象中的任意属性均适用。使用时只需将其追加至请求的querystring中即可。对实体对象中不存在的属性进行操作将会得到不可预期的结果。
- 分页
- skip={数字}
跳过指定条数的记录数 - take={数字}
取出指定条数的记录数(注:最大值为1500,即单页最多返回1500条数据) - include=total
需要返回记录总数
- skip={数字}
- 排序
- orderBy=[-]{属性名称},[-]{属性名称}
返回结果按指定属性排序,在名称前加”-“表示按倒序排序。多个属性的排序可使用逗号分隔。如:orderBy=-Id,Name,-Age
- orderBy=[-]{属性名称},[-]{属性名称}
- 条件过滤
不等于
- {属性名称}!={值}
如:Id!=1
- {属性名称}!={值}
大于等于
- >{属性名称}={值}
如:>Id=1
- >{属性名称}={值}
大于
- {属性名称}>={值}
如:Id>=1
- {属性名称}>={值}
小于
- <{属性名称}={值}
如:<Id=1
- <{属性名称}={值}
小于等于
- {属性名称}<={值}
如:Id<=1
- {属性名称}<={值}
In
- {属性名称}In={值,值,值}
属性的值需包含在指定的集合中,如:IdIn=1,2,3
- {属性名称}In={值,值,值}
Between
- {属性名称}Between={值,值}
属性的值需处于指定的区间之间,仅支持数字,如: IdBetween=1,3
- {属性名称}Between={值,值}
字符串包含指定字符
- {属性名称}Contains={值}
如:nameContains=abc
- {属性名称}Contains={值}
字符串以指定字符开头
- {属性名称}StartsWith={值}
如:nameStartsWith=abc
- {属性名称}StartsWith={值}
字符串以指定字符结尾
- {属性名称}EndsWith={值}
如:nameEndsWith=abc
- {属性名称}EndsWith={值}
2. 数据实体格式
1. 员工数据对象格式
| 属性名称 | 说明 |
|---|---|
| id | 员工Id |
| enterpriseId | 员工所属企业Id |
| employeeNo | 员工工号 |
| employeeName | 员工姓名 |
| companyId | 员工所属公司Id |
| companyCode | 员工所属公司编码 |
| companyName | 员工所属公司名称 |
| departmentId | 员工所属部门Id |
| departmentCode | 员工所属部门编码 |
| departmentName | 员工所属部门名称 |
| phoneNumber | 员工电话号码 |
| 员工电子邮件地址 | |
| status | 员工状态,0和1分别表示离职和在职状态 |
| createdDate | 员工创建时间(时间戳格式) |
| nameJianPin | 员工姓名简拼 |
| nameQuanPin | 员工姓名全拼 |
| boundToWeChat | 员工是否已绑定微信 |
| culture | 员工语言文化设置信息 |