1. 组织架构
1.1. 组织架构说明
1.1.1. 组织架构的定义
组织结构说明
字段 | 类型 | 是否必须 | 描述 |
---|---|---|---|
id | LONG | 否 | 自增 id |
name | STRING | 是 | 名称 |
code | STRING | 是 | 组织编码,全局唯一 |
source | STRING | 是 | 组织来源,api创建固定值为internal |
createdAt | DATETIME | 否 | 创建的时间 |
createdBy | INTEGER | 否 | 创建用户的 id |
updatedAt | DATETIME | 否 | 最后更新的时间 |
updatedBy | INTEGER | 否 | 最后修改用户的 id |
STRING | 否 | 组织邮箱 | |
parentId | INTEGER | 否 | 上级组织id |
orderNo | INTEGER | 否 | 组织排序号 |
parentCode | STRING | 否 | 上级组织编码,新增修改时不是必须传递 |
1.2. 接口说明
1.2.1. 创建组织
创建组织。
请求URL
POST /api/v1/orgs
请求参数
URL 参数
无
request body 参数
说明
返回对象的格式说明
接口示例1: 创建组织
POST /api/v1/orgs
{
"name": "组织名称",
"description": "",
"parentId": 29,
"code": "112233",
"orderNo": 1
}
返回
{
"version": "",
"code": 0,
"msg": "success",
"data": {
"id": 31,
"name": "组织名称",
"description": "",
"createdBy": 2,
"createdAt": "2022-08-09 15:23:05",
"updatedBy": 2,
"updatedAt": "2022-08-09 15:23:05",
"parentId": 29,
"source": "internal",
"code": "112233",
"parentCode": "1122",
"orderNo": 1
}
}
1.2.2. 修改组织
修改组织。
请求URL
PUT /api/v1/orgs/{orgId}
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgId | LONG | 是 | 修改组织的 id |
request body 参数
说明
返回对象的格式说明
接口示例1: 修改组织
PUT /api/v1/orgs/{orgId}
{
"id":31,
"name": "组织名称updated",
"description": "",
"parentId": 29,
"code": "112233",
"orderNo": 1
}
返回
{
"version": "4.1-SNAPSHOT@@git.commit.id.abbrev@#dd51249",
"code": 0,
"msg": "success",
"data": {
"id": 31,
"name": "组织名称updated",
"description": "",
"updatedBy": 2,
"updatedAt": "2022-08-09 15:25:54",
"parentId": 29,
"source": "internal",
"code": "112233",
"parentCode": "1122",
"orderNo": 1
}
}
1.2.3. 删除组织
删除组织。
请求URL
DELETE /api/v1/orgs/{orgId}
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgId | LONG | 是 | 组织的 id |
request body 参数
无
说明
组织有下级组织无法删除,组织中有用户无法删除。需要删除下级组织和用户才能删除该组织。
返回对象的格式说明
接口示例1: 删除组织
DELETE /api/v1/orgs/{orgId}
返回
{
"version": "",
"code": 0,
"msg": "success"
}
1.2.4. 通过id查询组织
通过id查询组织。
请求URL
GET /api/v1/orgs/{orgId}
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgId | LONG | 是 | 组织的 id |
request body 参数
无
说明
返回对象的格式说明
接口示例1: 通过id查询组织
GET /api/v1/orgs/{orgId}
返回
{
"version": "",
"code": 0,
"msg": "success",
"data": {
"id": 31,
"name": "组织名称updated",
"description": "",
"createdBy": 2,
"createdAt": "2022-08-09 15:23:05",
"updatedBy": 2,
"updatedAt": "2022-08-09 15:25:54",
"parentId": 29,
"source": "internal",
"code": "112233",
"parentCode": "1122",
"orderNo": 1
}
}
1.2.5. 通过code查询组织
通过code查询组织。
请求URL
GET /api/v1/orgs/code/{orgCode}
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgCode | STRING | 是 | 组织的 code |
request body 参数
无
说明
返回对象的格式说明
接口示例1: 通过code查询组织
GET /api/v1/orgs/code/{orgCode}
返回
{
"version": "",
"code": 0,
"msg": "success",
"data": {
"id": 31,
"name": "组织名称updated",
"description": "",
"createdBy": 2,
"createdAt": "2022-08-09 15:23:05",
"updatedBy": 2,
"updatedAt": "2022-08-09 15:25:54",
"parentId": 29,
"source": "internal",
"code": "112233",
"parentCode": "1122",
"orderNo": 1,
"delete": false
}
}
1.2.6. 通过 code 修改组织
通过 code 修改组织。
请求URL
PUT /api/v1/orgs/code/{orgCode}
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgCode | STRING | 是 | 修改组织的 code |
request body 参数
说明
返回对象的格式说明
接口示例1: 通过 code 修改组织
PUT /api/v1/orgs/code/{orgCode}
{
"name": "组织名称updated",
"description": "",
"parentId": 29,
"code": "112233",
"parentCode": "1122",
"orderNo": 1
}
返回
{
"version": "",
"code": 0,
"msg": "success",
"data": {
"id": 31,
"name": "组织名称updated",
"description": "",
"updatedBy": 2,
"updatedAt": "2022-08-09 15:25:54",
"parentId": 29,
"source": "internal",
"code": "112233",
"parentCode": "1122",
"orderNo": 1
}
}
1.2.7. 通过 code 删除组织
通过 code 删除组织。
请求URL
DELETE /api/v1/orgs/code/{orgCode}
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgCode | STRING | 是 | 组织的 code |
request body 参数
无
说明
组织有下级组织无法删除,组织中有用户无法删除。需要删除下级组织和用户才能删除该组织。
返回对象的格式说明
接口示例1: 通过 code 删除组织
DELETE /api/v1/orgs/code/{orgCode}
返回
{
"version": "",
"code": 0,
"msg": "success"
}
1.2.8. 查询组织列表
查询组织列表。
请求URL
GET /api/v1/orgs
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
parentId | LONG | 否 | 组织的父级 id ,不传则从根结点查询 |
fetchChild | BOOLEAN | 否 | 是否递归查询所有下级组织,默认为false |
request body 参数
无
说明
返回对象的格式说明
接口示例1: 查询组织列表
GET /api/v1/orgs
返回
{
"version": "",
"code": 0,
"msg": "success",
"data": [
{
"id": 1,
"name": "第一级组织",
"description": "",
"createdBy": 2,
"createdAt": "2022-08-09 10:37:35",
"updatedBy": 2,
"updatedAt": "2022-08-09 10:37:35",
"source": "internal",
"code": "1",
"orderNo": 0,
"delete": false
}
]
}
1.2.9. 查询子部门及用户
查询组织列表。
请求URL
GET /api/v1/orgs/depts-users?parentId={parentId}
请求参数
URL Query 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
parentId | LONG | 否 | 组织的父级 id ,不传则从根结点查询 |
无
说明
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data.subOrgs | JSON ARRAY | 组织结构说明 |
data.users | JSON ARRAY | 用户结构说明 |
接口示例1: 查询子部门及用户
GET /api/v1/orgs/depts-users?parentId={parentId}
返回
{
"version":"4.5-SNAPSHOT@a9e6115#2178061",
"code":0,
"msg":"success",
"data":{
"subOrgs":[
{
"id":23,
"name":"开发部",
"description":"",
"createdBy":11630,
"createdAt":"2023-07-12 15:23:48",
"updatedBy":11630,
"updatedAt":"2023-07-12 15:23:48",
"parentId":1,
"code":"490058140",
"parentCode":"1",
"orderNo":1,
"delete":false
}
],
"users":[
{
"id":159,
"name":"test",
"email":"zhangjunjie@hengshi.com",
"description":"user import from LDAP.",
"isDelete":false,
"loginName":"test"
}
]
}
}