主题
组织架构
组织架构说明
组织架构的定义
组织结构说明
字段 | 类型 | 是否必须 | 描述 |
---|---|---|---|
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 | 否 | 上级组织编码,新增修改时不是必须传递 |
接口说明
创建组织
创建组织。
请求URL
http
POST /api/orgs HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
无
request body 参数
返回对象的格式说明
接口示例1: 创建组织
http
POST /api/orgs HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
// Request Body:
{
"name": "组织名称",
"description": "",
"parentId": 29,
"code": "112233",
"orderNo": 1
}
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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
}
}
修改组织
修改组织。
请求URL
http
PUT /api/orgs/{orgId} HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgId | LONG | 是 | 修改组织的 id |
request body 参数
返回对象的格式说明
接口示例1: 修改组织
http
PUT /api/orgs/{orgId} HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
// Request Body:
{
"id":31,
"name": "组织名称updated",
"description": "",
"parentId": 29,
"code": "112233",
"orderNo": 1
}
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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
}
}
删除组织
删除组织。
请求URL
http
DELETE /api/orgs/{orgId} HTTP/1.1
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgId | LONG | 是 | 组织的 id |
request body 参数
无
说明
组织有下级组织无法删除,组织中有用户无法删除。需要删除下级组织和用户才能删除该组织。
接口示例1: 删除组织
http
DELETE /api/orgs/{orgId} HTTP/1.1
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"code": 0,
"msg": "success"
}
通过id查询组织
通过id查询组织。
请求URL
http
GET /api/orgs/{orgId} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgId | LONG | 是 | 组织的 id |
request body 参数
无
返回对象的格式说明
接口示例1: 通过id查询组织
http
GET /api/orgs/{orgId} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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
}
}
通过code查询组织
通过code查询组织。
请求URL
http
GET /api/orgs/code/{orgCode} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgCode | STRING | 是 | 组织的 code |
request body 参数
无
返回对象的格式说明
接口示例1: 通过code查询组织
http
GET /api/orgs/code/{orgCode} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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
}
}
通过 code 修改组织
通过 code 修改组织。
请求URL
http
PUT /api/orgs/code/{orgCode} HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgCode | STRING | 是 | 修改组织的 code |
request body 参数
返回对象的格式说明
接口示例1: 通过 code 修改组织
http
PUT /api/orgs/code/{orgCode} HTTP/1.1
Content-Type: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
// Request Body:
{
"name": "组织名称updated",
"description": "",
"parentId": 29,
"code": "112233",
"parentCode": "1122",
"orderNo": 1
}
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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
}
}
通过 code 删除组织
通过 code 删除组织。
请求URL
http
DELETE /api/orgs/code/{orgCode} HTTP/1.1
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
orgCode | STRING | 是 | 组织的 code |
request body 参数
无
说明
组织有下级组织无法删除,组织中有用户无法删除。需要删除下级组织和用户才能删除该组织。
接口示例1: 通过 code 删除组织
http
DELETE /api/orgs/code/{orgCode} HTTP/1.1
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"code": 0,
"msg": "success"
}
查询组织列表
查询组织列表。
请求URL
http
GET /api/orgs HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
parentId | LONG | 否 | 组织的父级 id ,不传则从根结点查询 |
fetchChild | BOOLEAN | 否 | 是否递归查询所有下级组织,默认为false |
request body 参数
无
返回对象的格式说明
接口示例1: 查询组织列表
http
GET /api/orgs HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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
}
]
}
查询子部门及用户
查询组织列表。
请求URL
http
GET /api/orgs/depts-users?parentId={parentId} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
请求参数
URL Query 参数
字段 | 类型 | 是否必须 | 说明 |
---|---|---|---|
parentId | LONG | 否 | 组织的父级 id ,不传则从根结点查询 |
无
返回对象的格式说明
字段 | 类型 | 说明 |
---|---|---|
version | STRING | 当前系统版本哈希值 |
data.subOrgs | JSON ARRAY | 组织结构说明 |
data.users | JSON ARRAY | 用户结构说明 |
接口示例1: 查询子部门及用户
http
GET /api/orgs/depts-users?parentId={parentId} HTTP/1.1
Accept: application/json
Cookie: csrf=183f1c4...; sid=26ee552d...; _USER_SESSION_ID=f2a01083...
http
HTTP/1.1 200 Ok
Content-Type: application/json
{
"version": "version@9a5e106#6730f0d",
"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":"anonymous@hengshi.com",
"description":"user import from LDAP.",
"isDelete":false,
"loginName":"test"
}
]
}
}