关键词:服务集成,数据同步,组织同步,组织人员同步,接口规范

O2OA允许用户自定义接口和代码逻辑来完成系统与第三方业务系统的数据同步,人员和组织的同步。本文主要介绍组织人员同步的数据操作规范。

本文档适用于组织和用户的同步。
用户信息包括3个部分:基本信息、用户属性和所在部门。新增用户(add)和修改用户(update)时,需列式该用户下的全量属性和所在部门。接口根据报文的用户所在部门对用户的身份进行增删改。
组织信息包括3个部分:基本信息、组织属性和组织职务。新增组织(add)和修改组织(update)时,需列式该组织下的全量组织属性和组织职务。接口同时根据报文对组织属性和组织职务进行增删改。

**

**

服务地址 http://{centerserver}:20030/x_program_center/jaxrs/invoke/personSync/execute
调用方式 HTTP
调用方法 POST
请求报文Content-Type application/json; charset=utf-8
响应报文Content-Type application/json; charset=utf-8



本服务对应用户的增删改查操作,通过传请求报文的action参数进行对应的操作:

参数 执行操作
add 新增用户
update 修改用户
updatepwd 修改密码
updateSuperior 修改用户的汇报对象
delete 删除用户


如:删除用户的请求报文为


{
"action": "delete", //删除用户
"flag" : "" //用户标志
}
__


**

用户信息包括3个部分:基本信息、用户属性和所在部门。新增用户,需列式该用户下的全量属性和所在部门。接口根据报文的用户所在部门对用户的身份进行新增。

{
action : add,
genderType : "m", //性别.男:m,女:f,未知:d
signature : "", //个性签名
description :"", // 描述.
name: "", //名称,可重名.
employee: "", //工号,必填,不可重复.
unique: "", //唯一标识,不可重复,为空则使用自动填充值
distinguishedName: "", //识别名,系统自动填充,@P结尾.
orderNumber: "", //排序号,升序排列,为空在最后
controllerList: "", //个人管理者.默认为创建者。
superior: "", //汇报对象.
mail: "", //邮件地址.
weixin: "", //微信号.
qq: "", //QQ号.
mobile: "", //必填,手机号.
officePhone: "", //办公电话.
boardDate: "", //入职时间.
birthday: "", //生日.
age: "", //年龄
dingdingId: "", //钉钉人员ID.
dingdingHash: "" //钉钉人员哈希特征.
attributeList : [ //用户的其他属性,需全量列式
{
name : "", //属性名称,
value : "", //属性值,允许字符串或者数组
description : "" //属性描述
orderNumber: "" //排序号,升序排列,为空在最后
}
...
],
unitList : [ //用户所在部门,需全量列式
{
flag: "", //组织标志位,可以为组织唯一编码unique/组织的distinguishedName/组织id
orderNumber: "", //在组织里的排序号,升序排列,为空在最后
description: "", //描述
duty : "", //用户的职务
position : "" //用户的岗位
}
...
]
}_

属性 上级 类型 单值/多值 必填 说明 样例
action string single true 操作 add
genderType string single true 性别.男:m,女:f,未知:d m
signature string single 个性签名. 香港移动
description string single 描述. 香港移动
name string single true 名称,可重名. 张三
employee string single true 工号,必填,不可重复. P0780
unique string single 唯一标识,不可重复,为空则使用自动填充值 fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01
distinguishedName string single 识别名,自动填充,@P结尾. 张三@fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01@P
orderNumber number single 排序号,升序排列,为空在最后 1
controllerarray array multi 个人管理者.默认为创建者。 83de86fc-60bc-4b4c-955c-1085915865a4
superior string single 汇报对象.
可以为汇报对象的distinguishedName 、unique 、employee、mobile。如果未找到汇报对象,不设置。
P0180
mail string single 邮件地址. 1234567@qq.com
weixin string single 微信号.
qq string single QQ号. 1234567
mobile string single true 必填,手机号. 13800000000
officePhone string single 办公电话. 0571-88888888
boarddate date-string single 入职时间. 2015-02-02
birthday date-string single 生日. 1995-10-12
age number single 年龄 20
dingdingId string single 钉钉人员ID.
dingdingHash string single 钉钉人员哈希特征.
zhengwuDingdingId string single 政务钉钉人员ID. 1000833324
zhengwuDingdingHash string single 政务钉钉人员哈希特征. b388708eb84d6ae6328e03526a069ec864416a3b916ce22b8fb8bbfa3d84eb6b
qiyeweixinId string single 企业微信人员ID.
qiyeweixinHash string single 企业微信人员哈希特征.
attributeList array multi 其他人员属性列表
name attributeList string single 属性名称 级别
description attributeList string single 属性描述 级别描述
value attributeList string/array multi 属性值 1 / [ "1" ]
orderNumber attributeList string single 排序号,升序排列,为空在最后 18315158
unitList array multi 所在组织列表
flag unitList string single 组织标志位,可以为组织唯一编码unique/组织的distinguishedName/组织id "companyLeader/"公司管理层@9b45cb75-52f8-4e73-8470-4cdc78230b7d@U",
orderNumber

unitList string single 用户在组织里的排序号升序排列,为空在最后 123
description
unitList string single 描述 公司管理层
duty unitList string single 用户在该组织的职务 正职领导
position unitList string single 用户在该组织的岗位 管理岗



{
"data": {
"value": {
"id" : "", //如果成功,用户64位id
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}

**

用户信息包括3个部分:基本信息、用户属性和所在部门。修改用户,需列式该用户下的全量属性和所在部门。接口根据报文的用户所在部门对用户的身份进行增删改。



{
action : update,
genderType : "m", //性别.男:m,女:f,未知:d
signature : "", //个性签名
description :"", // 描述.
name: "", //名称,可重名.
employee: "", //工号,必填,不可重复.
unique: "", //唯一标识,不可重复,为空则使用自动填充值
distinguishedName: "", //识别名,系统自动填充,@P结尾.
orderNumber: "", //排序号,升序排列,为空在最后
controllerList: "", //个人管理者.默认为创建者。
superior: "", //汇报对象.
mail: "", //邮件地址.
weixin: "", //微信号.
qq: "", //QQ号.
mobile: "", //必填,手机号.
officePhone: "", //办公电话.
boardDate: "", //入职时间.
birthday: "", //生日.
age: "", //年龄
dingdingId: "", //钉钉人员ID.
dingdingHash: "" //钉钉人员哈希特征.
attributeList : [ //用户的其他属性
{
name : "", //属性名称,
value : "", //属性值,允许字符串或者数组
description : "" //属性描述
orderNumber: "" //排序号,升序排列,为空在最后
}
...
],
unitList : [ //用户所在部门
{
flag: "", //组织唯一编码unique/组织的distinguishedName/组织id
orderNumber: "", //在组织里的排序号,升序排列,为空在最后
description: "", //描述
duty : "", //用户在该组织的职务
position : "" //用户在该组织的岗位
}
...
]
}

属性 上级 类型 单值/多值 必填 说明 样例
action string single true 操作 update
genderType string single true 性别.男:m,女:f,未知:d m
signature string single 个性签名. 香港移动
description string single 描述. 香港移动
name string single true 名称,可重名. 张三
employee string single true 工号,必填,不可重复. P0780
unique string single 唯一标识,不可重复,为空则使用自动填充值 fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01
distinguishedName string single 识别名,自动填充,@P结尾. 张三@fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01@P
orderNumber number single 排序号,升序排列,为空在最后 1
controllerarray array multi 个人管理者.默认为创建者。 83de86fc-60bc-4b4c-955c-1085915865a4
superior string single 汇报对象.
可以为汇报对象的distinguishedName 、unique 、employee、mobile。如果未找到汇报对象,不设置。
P0180
mail string single 邮件地址. 1234567@qq.com
weixin string single 微信号.
qq string single QQ号. 1234567
mobile string single true 必填,手机号. 13800000000
officePhone string single 办公电话. 0571-88888888
boarddate date-string single 入职时间. 2015-02-02
birthday date-string single 生日. 1995-10-12
age number single 年龄 20
dingdingId string single 钉钉人员ID.
dingdingHash string single 钉钉人员哈希特征.
zhengwuDingdingId string single 政务钉钉人员ID.
zhengwuDingdingHash string single 政务钉钉人员哈希特征.
qiyeweixinId string single 企业微信人员ID.
qiyeweixinHash string single 企业微信人员哈希特征.
attributeList array multi 其他人员属性列表
name attributeList string single 属性名称 级别
description attributeList string single 属性描述 级别描述
value attributeList string/array multi 属性值 1 / [ "1" ]
orderNumber attributeList string single 排序号,升序排列,为空在最后 18315158
unitList array multi 所在组织列表
flag unitList string single 组织标志位,可以为组织唯一编码unique/组织的distinguishedName/组织id "companyLeader/"公司管理层@9b45cb75-52f8-4e73-8470-4cdc78230b7d@U"
orderNumber

unitList string single 用户在组织里的排序号升序排列,为空在最后 123
description
unitList string single 描述 公司管理层
duty unitList string single 用户在该组织的职务 正职领导
position unitList string single 用户在该组织的岗位 管理岗


{
"data": {
"value": {
"id" : "", //如果成功,用户64位id
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}



**

{
action : "updatepwd",
flag: "", //用户标志位
password: "" //新密码
}


说明:flag用来查找用户
可以为
distinguishedName : "", //识别名,,@P结尾.
unique : "", //唯一标识,
employee: "", //工号,.
mobile: "", //,手机号.
Id : "" //个人数据库主键

{
"data": {
"value": {
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}
__

**

{
action : "updateSuperior",
flag: "", //用户标志位
superior: "" //用户汇报对象
}

说明:flag用来查找用户
可以为
distinguishedName : "", //识别名,,@P结尾.
unique : "", //唯一标识,
employee: "", //工号,.
mobile: "", //,手机号.
Id : "" //个人数据库主键

{
"data": {
"value": {
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}
__


**

{
action : "delete",
flag: "", //用户标志位
}
__

说明:说明:flag用来查找用户
可以为
distinguishedName : "", //识别名,,@P结尾.
unique : "", //唯一标识,
employee: "", //工号,.
mobile: "", //,手机号.
Id : "" //个人数据库主键

{
"data": {
"value": {
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}
__

**

**

服务地址 http://ahpp.zoneland.net:20030/x_program_center/jaxrs/invoke/unitAsync/execute
调用方式 HTTP
调用方法 POST
请求报文Content-Type application/json; charset=utf-8
响应报文Content-Type application/json; charset=utf-8



本服务对应组织的增删改查操作,通过传请求报文的action参数进行对应的操作:

参数 执行操作
add 新增组织
update 修改组织
delete 删除组织


如:删除组织的请求报文可以为


{
"action": "delete", //删除组织
"flag" : "" //组织标志
}






**

{
"action":"add",
"name":"", //名称,可以重名.
"unique":"", //唯一标识,不可重复,为空则使用自动填充值
"distinguishedName":"", //识别名.以@U结尾.
"typeList":"", //组织类型.
"description":"", //描述.
"shortName":"", //组织简称。
"superior":"", //上级组织.
"orderNumber":"", //排序号,升序排列,为空在最后
"controllerList":"", //组织的管理人员.
"dingdingId":"", //钉钉部门ID.
"dingdingHash":"", //钉钉部门哈希特征.
"qiyeweixinId":"", //企业微信人员ID.
"zhengwuDingdingId":"", //政务钉钉人员ID.
"zhengwuDingdingHash":"", //政务钉钉人员哈希特征.
"qiyeweixinHash":"", //企业微信人员哈希特征.
"attributeList" : [ //组织属性
{
description:"", //描述.
name:"", //名称,不可重名.
unique:"", //唯一标识,不可重复,为空则使用自动填充值
distinguishedName:"", //识别名,自动填充,@UA结尾.
orderNumber:"", //排序号,升序排列,为空在最后
value:"", //属性值,多值.
}
...
],
"dutyList" : [ //组织职务
{
description:"", //描述.
name:"", //名称,同一组织下不可重名.
unique:"", //唯一标识,不可重复,为空则使用自动填充值
distinguishedName:"", //识别名,自动填充,@UD结尾.
orderNumber:"", //排序号,升序排列,为空在最后
value:"", //组织职务身份成员,多值.
}
...
]
}_

属性 上级 类型 单值/多值 说明 样例
action string single add
name string single 名称,可以重名. 技术支持
unique string single 唯一标识,不可重复,为空则使用自动填充值 1000263571
distinguishedName string single 识别名.如果未空系统自动填充.以@U结尾. 技术支持@1000263571@U
typeList array multi 组织类型. [ "部门" ]
description string single 描述.
shortName string single 组织简称。
levelName string single 显示的层级名. 安徽联通/技术支持
superior string single 上级组织标志位,可以为组织唯一编码unique/组织的distinguishedName/组织id "companyLeader/"公司管理层@9b45cb75-52f8-4e73-8470-4cdc78230b7d@U"/9d14f85a-27ba-4e02-b4ef-4ebfcf3f19c0
orderNumber number single 排序号,升序排列,为空在最后 20
controllerList array multi 组织的管理人员的.distinguishedName 、unique 、employee或mobile ["138000000"]
dingdingId string single 钉钉部门ID.
dingdingHash string single 钉钉部门哈希特征.
qiyeweixinId string single 企业微信人员ID.
zhengwuDingdingId string single 政务钉钉人员ID. 1000263571
zhengwuDingdingHash string single 政务钉钉人员哈希特征. 8ecfc82b45c5d33be7f84599b265e4fffb56108c0f8f85bde7856e01521a7d0b
qiyeweixinHash string single 企业微信人员哈希特征.
attributeList array single 组织属性列表
name attributeList string multi 名称,不可重名. 组织属性
description attributeList string single 描述.
distinguishedName attributeList string single 识别名,自动填充,@UA结尾. 组织属性@e762a4df-44ce-418c-bb20-899558b49622@UA
unique attributeList string single 唯一标识,不可重复,为空则使用自动填充值 e762a4df-44ce-418c-bb20-899558b49622
value attributeList string/array multi 属性值,多值. ["组织属性值"]
orderNumber attributeList string single 排序号,升序排列,为空在最后 112345
dutyList array multi 组织职务
name dutyList string single 名称,同一组织下不可重名. 部门领导
description dutyList string single 描述.
unique dutyList string single 唯一标识,不可重复,为空则使用自动填充值 7a1b7021-8812-4d18-9447-6b27ce7454ed
distinguishedName dutyList string single 识别名,自动填充,@UD结尾. 部门领导@7a1b7021-8812-4d18-9447-6b27ce7454ed@UD
orderNumber dutyList string single 排序号,升序排列,为空在最后 排序号,升序排列,为空在最后
value dutyList aray multi 组织职务身份成员,多值.
可以是人员的.distinguishedName 、unique 、employee或mobile
["张三@fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01@P","P0780","13800000000","fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01"]




{
"data": {
"value": {
"id" : "", //如果成功,组织64位id
"distinguishedName: "", //如果成功,组织识别名
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}
__



**

{
"action":" update",
"name":"", //名称,可以重名.
"unique":"", //唯一标识,不可重复,为空则使用自动填充值
"distinguishedName":"", //识别名.以@U结尾.
"typeList":"", //组织类型.
"description":"", //描述.
"shortName":"", //组织简称。
"superior":"", //上级组织.
"orderNumber":"", //排序号,升序排列,为空在最后
"controllerList":"", //组织的管理人员.
"dingdingId":"", //钉钉部门ID.
"dingdingHash":"", //钉钉部门哈希特征.
"qiyeweixinId":"", //企业微信人员ID.
"zhengwuDingdingId":"", //政务钉钉人员ID.
"zhengwuDingdingHash":"", //政务钉钉人员哈希特征.
"qiyeweixinHash":"", //企业微信人员哈希特征.
"attributeList" : [ //组织属性
{
description:"", //描述.
name:"", //名称,不可重名.
unique:"", //唯一标识,不可重复,为空则使用自动填充值
distinguishedName:"", //识别名,自动填充,@UA结尾.
orderNumber:"", //排序号,升序排列,为空在最后
attributeList:"", //属性值,多值.
}
...
],
"dutyList" : [ //组织职务
{
description:"", //描述.
name:"", //名称,同一组织下不可重名.
unique:"", //唯一标识,不可重复,为空则使用自动填充值
distinguishedName:"", //识别名,自动填充,@UD结尾.
orderNumber:"", //排序号,升序排列,为空在最后
identityList:"", //组织职务身份成员,多值.
}
...
]
}_

属性 上级 类型 单值/多值 说明 样例
action string single update
name string single 名称,可以重名. 技术支持
unique string single 唯一标识,不可重复,为空则使用自动填充值 1000263571
distinguishedName string single 识别名.如果未空系统自动填充.以@U结尾. 技术支持@1000263571@U
typeList array multi 组织类型. [ "部门" ]
description string single 描述.
shortName string single 组织简称。
levelName string single 显示的层级名. 安徽联通/技术支持
superior string single 上级组织标志位,可以为组织唯一编码unique/组织的distinguishedName/组织id "companyLeader/"公司管理层@9b45cb75-52f8-4e73-8470-4cdc78230b7d@U"/9d14f85a-27ba-4e02-b4ef-4ebfcf3f19c0
orderNumber number single 排序号,升序排列,为空在最后 20
controllerList array multi 组织的管理人员的.distinguishedName 、unique 、employee或mobile ["138000000"]
dingdingId string single 钉钉部门ID.
dingdingHash string single 钉钉部门哈希特征.
qiyeweixinId string single 企业微信人员ID.
zhengwuDingdingId string single 政务钉钉人员ID. 1000263571
zhengwuDingdingHash string single 政务钉钉人员哈希特征. 8ecfc82b45c5d33be7f84599b265e4fffb56108c0f8f85bde7856e01521a7d0b
qiyeweixinHash string single 企业微信人员哈希特征.
attributeList array single 组织属性列表
name attributeList string multi 名称,不可重名. 组织属性
description attributeList string single 描述.
distinguishedName attributeList string single 识别名,自动填充,@UA结尾. 组织属性@e762a4df-44ce-418c-bb20-899558b49622@UA
unique attributeList string single 唯一标识,不可重复,为空则使用自动填充值 e762a4df-44ce-418c-bb20-899558b49622
value attributeList string/array multi 属性值,多值. ["组织属性值"]
orderNumber attributeList string single 排序号,升序排列,为空在最后 112345
dutyList array multi 组织职务
name dutyList string single 名称,同一组织下不可重名. 部门领导
description dutyList string single 描述.
unique dutyList string single 唯一标识,不可重复,为空则使用自动填充值 7a1b7021-8812-4d18-9447-6b27ce7454ed
distinguishedName dutyList string single 识别名,自动填充,@UD结尾. 部门领导@7a1b7021-8812-4d18-9447-6b27ce7454ed@UD
orderNumber dutyList string single 排序号,升序排列,为空在最后 排序号,升序排列,为空在最后
value dutyList aray multi 组织职务身份成员,多值.
可以是人员的.distinguishedName 、unique 、employee或mobile
["张三@fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01@P","P0780","13800000000","fb3ea7de-d54f-4679-8e9a-35cb1e6b3d01"]



{
"data": {
"value": {
"id" : "", //如果成功,组织64位id
"distinguishedName: "", //如果成功,组织识别名
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}
__



**

{
action : "delete",
distinguishedName : "", //识别名,@P结尾.
unique : "", //唯一标识
}

说明:__distinguishedName 、unique 用来查找组织,其中一项不为空即可

{
"data": {
"value": {
"result" : "", //响应成功为 success, 失败为error
"description": "" //响应结果描述
}
}
}
__

附件:

接口-人员同步接口-personSync.js
接口-组织同步接口-unitSync.js

推荐文章:

平台服务器下载及安装部署-Windows系统
2021-02-25
O2OA信息化系统开发支持公有云,私有云和混合云部署,也支持复杂的网络结构下的分布式部署。O2OA开发平台安装部署非常方便,只需要简单的三步即可完成安装。平台内
开发知识-React篇:在O2OA平台框架中使用React
2021-02-07
  本章我们介绍使用React的CreateReactApp工具,在O2平台中创建React应用。在本例中,我们将列示当前用户的前20条待办,点击标题打开待办;
系统集成-SSO微软ADSF单点认证-AD域认证
2021-02-26
O2OA平台提供灵活的系统集成方案,让企业信息平台与各类第三方系统进行集成。本篇主要介绍如何在O2OA中使用微软ADSF单点认证的方案与其他系统实现单点登入。
开发知识-达梦数据安装
2021-02-07
1.安装命令:    ./DMInstall.bin 图形化安装    ./DMInstall.bin-i 文字界面安装注意事项:    可打开文件数过少,建议
业务开发-组织架构-组织职位信息管理
2021-02-26
O2OA提供多级组织架构设置能力,用户可以在系统内设置集团、分公司、部门、小组等多级企业组织结构来满足办公需要,可以为组织设置不同的职务来实现配置和人员的解耦。
功能部署-为平台增加全文检索功能
2021-02-25
O2OA平台对流程和信息数据提供全文检索功能,可以对流程和信息的表单信息以及附件的文件内容进行分析和索引,提供全文检索能力。本篇主要介绍如何将在O2OA中安装部
通用项目环境使用说明
2021-02-18
O2OA演示环境。它并不是一款传统意义上的OA系统。它是一款以流程管理为核心的全开源全免费的信息化开发平台,完整的代码可以直接在Github和Gitee上下载,
平台服务器主机架构配置推荐
2021-03-04
O2OA开发平台支持公有云,私有云和混合云部署,也支持复杂的网络结构下的分布式部署。本篇主要介绍O2OA支持的部署环境以及常用的集群部署架构。
开发知识-Linux非root用户如何使用80端口启动O2OA
2021-02-07
普通用户:whs下载o2server在普通用户自己的目录中创建一个data目录,命令:mkdirdata。进入data目录,下载o2server的zip包。命令
系统配置-流程催办提醒配置
2021-02-25
O2OA平台设计了灵活的消息提醒数据交互方式,开发者可以根据自己的需要,来消费消息提醒数据,也可以将消息提醒数据接入到Kafka消息中间件来实现消息的准实时提醒

results matching ""

    No results matching ""