当存在多套OA系统或其他门户、移动端时,该功能可以实现将OA中操作人的待办事宜、已办事宜推送到OA服务端(主系统)或者第三方系统,在OA服务端(主系统)或者第三方系统进行展示,并可以对OA流程的进行审批操作。
开发统一待办中心客户端消息推送配置页面,用于对消息来源标识、消息推送类、配置参数、人员白名单、流程白名单实现可配置化,满足不同场景下客户对OA流程推送的要求。
统一待办推送设置配置-管理员设置
1、 功能入口:后台管理中心-集成中心-统一待办推送设置(付费功能)
2、 新建入口:
点击新建按钮,进入新建推送设置页面:
1)从空白新建
点击从空白创建按钮,进入详细版本的新建推送设置页面,可自定义选择推送类型及相关参数信息,此模式下所有的配置均为空,均需自行配置。
2)选择套件快速创建
由于标准已形成了已知的第三方系统推送方案套件,为了优化用户的使用体验,新建时,标准将已知套件形成了简易版新建模板,仅需配置需要的必要参数即可完成配置。
3、 通用配置如下:
基本信息:
1)启用:开启后才能实现推送功能(默认禁用)。
2)标识:应用系统标识(第三方系统提供),唯一标识,不可重复。
3)系统名称:自定义名称,一般用中文表示,标识推送异构系统的名称。不允许只包含数字或含有特殊字符。
4) 所属机构:分权开启时显示,可将配置指定到具体分部或部门。
5)服务端地址:需推送的应用系统地址。
E10的地址前缀选择https://
第三方服务器ip+端口(例如:当前是E10推送到E10,那么我这里就配置的E10的openapi地址api.yunteams.cn)
6)人员转换关系:选择后根据规则进行推送。客户自行约定,主要是作与第三方系统的人员对应关系
7)推送类型:内置标准推送类【e-cology8/9、E10、ESB、蓝凌(SOAP)、金智教育(待办中心)】,可选择标准推送,还可以选择自定义推送。当推送类型选择为自定义时,需要数据推送类,根据填写class地址启动。
选择之后会自动连带出实现类(实现类是写在代码中的,如果选择自定义,实现类可自行编辑,但这个实现类也是需要写在代码中的,这里写一个代码中不存在的实现类,会保存失败)
参数设置:可以配置推送类中需要的固定参数,根据具体开发(推送类)中的参数情况配置。
以e-cology8/9套件为例:
1)sysCode:对应的值必须与接收端异构系统的标识保证一致!!即当前系统与第三方系统做对应的标识必须一致。
2)toViewRemark:默认为否,可以根据实际情况选择。
以E10套件为例:
1)sysCode:对应的值必须与接收端异构系统的标识保证一致!!即当前系统与第三方系统做对应的标识必须一致。
2)corpld:注册企业corpId,对应的值必须为接收端开发者资料中的corpld。
3)state:企业可以填写a-zA-Z0-9的参数值,长度不可超过128个字节。
4)app_key:接受端申请的通用型应用获得,可在接收端开放平台应用管理中新建通用型应用来获得参数值。
5)app_secret:接受端申请的通用型应用获得,可在接收端开放平台应用管理中新建通用型应用来获得参数值。
以ESB套件为例:
以蓝凌(SOAP)套件为例:
1)appName:对应的值必须与蓝凌分配的系统标识保证一致!!即当前系统与蓝凌做对应的标识必须一致。
2)username:对应的值必须与蓝凌分配的用户名保持一致。
3)password:对应的值必须与蓝凌分配的密码保持一致。
4)oaAddress:当前系统的访问地址,注意不是蓝凌的访问地址。
5)ekpUserKey:蓝凌接口中创建人、接收人数据需支持多维度数据,具体对接时使用蓝凌组织架构中人员的哪个字段是需要指明清楚。具体选项如下表所示:
选项 | 描述 |
个人登录名 | EKP系统组织架构唯一标识 |
唯一标识 | EKP系统组织架构个人编号 |
个人编号 | EKP系统组织架构个人登录名 |
关键字 | EKP系统组织架构关键字 |
LdapDN | 和LDAP集成时LDAP中DN值 |
以金智教育(待办中心)为例:
1)appId:填写金智教育(待办中心)分配的appId。
2)appSecret:填写金智教育(待办中心)分配的appSecret。
3)oaAddress:当前系统的访问地址,注意不是金智教育的访问地址。
以蓝凌(SOAP)推送清理历史数据为例:
实现类 | com.weaver.intunifytodo.client.engine.push.request.interfaces.WPushRemoveLanLingToSOAP |
1)appName:对应的值必须与蓝凌分配的系统标识保证一致!!即当前系统与蓝凌做对应的标识必须一致。
2)username:对应的值必须与蓝凌分配的用户名保持一致。
3)password:对应的值必须与蓝凌分配的密码保持一致。
注:本配置仅适用最新版本前已经推送到蓝凌的流程数据,需要配合历史数据重推功能一起使用,否则推送的历史数据删除,没有做历史数据重推,会导致推送数据缺失。
特殊数据处理:
1)重复数据过滤(只针对待办数据过滤):开关默认关闭
此处的重复数据指的是:推送数据时,相同数据集合中不同的业务数据状态多次推送导致的重复。例如:业务数据状态【转发】【抄送】均定义在【待办】数据集合中,若开启当前开关,则一条数据在【转发】状态下已经推送给第三方,则【抄送】时不会再次推送。
开关开启效果:
a、推送待办:判定缓存中是否存在唯一标识相同的数据,如果存在,待办不推送。记录推送日志状态为忽略,内容:特殊数据处理-重复数据过滤,如果不存在记录缓存,并触发推送
b、同一批次中包含同一个人(兼职身份)多个待办:不进行过滤,所有待办均推送
c、同一批次中包含同一个人(兼职身份)的已办和待办:进行过滤,只推送一条待办
d、不同批次中的同一条数据:同一个人只有一条待办数据(保留第一条待办)即只有一条待办数据是成功状态,其余待办均为忽略状态。
注:过滤数据只针对不同批次相同的唯一标识;即同一条流程同一个人即使有多条待办但是最终只会推送一条待办(第一条待办)
2)缺失数据补偿(只针对已办【办结】数据补偿):开关默认关闭
针对部分特殊业务场景,数据提交后状态转为已办,需要先补偿一条待办数据才能正常推送已办数据。开关默认关闭,开启后才会进行上述补偿操作。
开关开启效果:
a、推送已办【办结】:判定缓存中是否存在唯一标识相同的数据,如果存在,已办【办结】推送;不存在将当前数据复制生成一个待办数据,并优先推送。记录补偿待办数据即待办。
b、同一批次中包含同一个人(兼职身份)多个已办【办结】:缓存中不存在待办记录时:补偿多条代办数据;存在待办记录时:不补偿待办数据。
c、同一批次中包含同一个人(兼职身份)的已办和待办:缓存中不存在待办记录时:补偿一条待办先行推送,再推送本批次已办和待办;存在待办记录时:正常按照当前批次推送。
d、不同批次中的同一条数据:保证每个人都是一条待办对应一条已办。
推送异常提醒设置:
统一待办推送,本身有熔断机制,可以在网络异常的时候保持未推送的数据,并且在网络恢复之后,重新推送。但是一般对于管理员来说,数据无法推送这个情况要第一时间知晓,并且第一时间处理,最终第一时间恢复服务。
因此,我们需要在熔断机制基础上,增加对管理员的提醒,协助管理员保证服务平稳运行。
1)可支持提醒到IM、云桥、邮箱、短信,可支持提醒对象:人员(不支持兼职岗位)、角色
2)对于提醒到邮箱、短信,可自定义提醒内容
3)提醒信息记录数据库表单:iut_send_fuse_recovery
熔断时间:create_time 熔断回复时间:recover_time
1)补偿设置:
启用补偿开启之后,可设置定期触发(触发周期时间由Cron表达式生成器生成。对于未推送成功或推送未获取响应的数据,自动再推送X次(最少1次,最多10次)。等待X分钟(最小1分钟,最大30分钟)后,再次推送未获取第三方响应的数据。)
2)定时清理:
启用清理开启之后,可设置定期触发清理,以及设置日志保留时间(触发时间为每日自动执行清理的时间:可设置晚20:00到早6:00之间的整小时。自动执行的清理对象为:推送记录超过X天(最小1天,最大365天)并且返回标识为【成功】、【忽略】、【未返回】的所有数据)
3)注意:
如果客户环境是私有化部署,补偿设置与定时清理的功能需要在【系统管理--任务调度中心--回调管理(/info/dispatch/escheduler/report,需要在主管理团队下访问)】处新增配置(只需配置一次即可):
回调管理(自动补偿推送)
模块:iut_send_config
方法:pushData
回调地址:当前系统ip/papi/intunifytodo/client_engine/job/pushRequest
回调管理(定时删除)
模块:iut_send_config
方法:deleteData
回调地址:当前系统ip/papi/intunifytodo/client_engine/job/deleteRequestLog
4、保存后,可进入拦截设置页面
1)人员拦截:
拦截范围:下拉框可选择全部有效、白名单、黑名单(选择白名单后,仅仅对于白名单中添加的人员有效。选择黑名单后,除去黑名单中添加的人员其他人员全部有效)
已添加人员:可根据需求维护相应的人员、部门、分部、群组、角色、岗位,所有人信息
2)流程拦截:
拦截范围:下拉框可选择全部有效、白名单、黑名单(选择白名单后,仅对于白名单中添加的流程有效。选择黑名单后,除去黑名单中添加的流程其他流程全部有效)
已添加的工作流:根据需要维护相对应的流程类型
3)业务拦截
拦截设置默认选择【无需拦截】,即不限制拦截
切换为【自定义】时,出现列表 支持编辑数据集合中的业务数据状态(默认均为空)
业务数据状态浏览框展示如下:
注意:业务拦截优先级>>重复过滤开关优先级(推送逻辑中先判断业务拦截的业务再判断重复过滤开关相关)
4)流程类型分组拦截
允许选择整个流程类型进行数据拦截
推送日志
展示数据推送结果:在列表上勾选需要的数据,可进行【批量推送】或【批量删除】
点击查看可查看详情:
批量推送
通过批量补偿推送数据修正上下游数据状态一致,满足临时数据修正的需求,不影响用户使用
1. 批量推送任务
1.1 实时数据推送
调用流程接口获取OA流程数据,将OA中现存自身数据通过标识推送到下游系统。
支持通过 创建人、接收人、流程ID、流程类型、流程状态(待办、已办)、流程创建时间,条件查询数据后推送下游系统。
注:实时数据推送仅将OA中待处理数据或已处理数据最新状态推送到下游系统,无流程流转过程。
1.2 历史数据推送
获取统一待办推送设置-推送日志数据,将历史统一待办推送记录 再次推送到下游系统。
支持通过 创建人、接收人、流程ID、流程类型、流程状态(待办、已办、办结、删除)、数据触发时间,条件查询数据后推送下游系统。
2. 推送任务列表
用户创建的推送任务,后台系统进行异步执行。在推送任务页面生成任务记录,可观察任务执行进度。
1、任务列表支持暂停、开启、重试、删除,推送任务列表默认展示7天内数据,超过7天初始化、成功状态数据将自动删除。
2、推送数据条件:可查看新建推送任务配置。
3、异常数据量:可查看补偿推送数据信息,可导出EXCEL查看。