1、统一待办接口说明

1.1、接收异构系统流程接口

参数说明

接口地址

/rest/ofs/ReceiveRequestInfoByJson

功能说明

接收异构系统流程(json格式)

参数说明

JSON结构

参数名

说明

类型

syscode

异构系统标识

String

flowid

流程实例id

String

requestname

标题

String

workflowname

流程类型名称

String

nodename

步骤名称(节点名称)

String

pcurl

PC地址

String

appurl

APP地址

String

isremark

流程处理状态0:待办2:已办4:办结8:抄送(待阅)

String

viewtype

流程查看状态0:未读 (注:isremark = 0 且 viewtype = 0 会给OA消息中心推送消息,对接钉钉、企业微信)1:已读;

String

creator

创建人(原值)

String

createdatetime

创建日期时间

String

receiver

接收人(原值)

String

receivedatetime

接收日期时间

String

receivets

时间戳字段,客户端使用线程调用接口的时候,根据此字段判断是否需要更新数据,防止后发的请求数据被之前的覆盖例如"1602817491990"(毫秒级时间戳)

String

返回值说明

JSON结构

参数名

说明

syscode

异构系统标识

dataType

数据类型:

IsUse:统一待办中心

OtherSys:异构系统

WfType:流程类型

WfData:流程数据

SetParam:参数设置

operType

操作类型:

AutoNew :自动创建

New:新建

AutoEdit:自动更新

Edit:编辑

Del:删除

Check:检测

Set:设置

operResult

操作结果: 1:成功0:失败

message

错误信息

推送参数示例

注意添加消息头: accept:*/* connection:Keep-Alive Content-Type:application/json

{
    "syscode": "NC",
    "flowid": "001",
    "requestname": "测试流程001",
    "workflowname": "测试流程名称001",
    "nodename": "测试节点001",
    "pcurl": " /wui/index.html#/main/workflow/listDoing?menuIds=1",
    "appurl": " /wui/index.html#/main/workflow/listDoing?menuIds=1 ",
    "creator": "wld",
    "createdatetime": "2018-12-04 17:56:00",
    "receiver": "wld",
    "receivedatetime": "2018-12-04 17:56:00",
    "isremark": "0",
    "viewtype": "0",
    "receivets": "1602817491990"
}

postman调用示例

请求参数设置:

泛微 RESTful接口 泛微流程接口_泛微 RESTful接口

1.2、删除异构系统指定人员待办流

参数说明

接口地址

/rest/ofs/deleteUserRequestInfoByJson

功能说明

删除异构系统指定接收人待办流程(json格式)

参数说明

JSON结构

参数名

说明

类型

syscode

异构系统标识String

string

flowid

流程实例id

string

userid

接收人(原值)

string

返回值说明

JSON结构

参数名

说明

syscode

异构系统标识

dataType

数据类型:

IsUse:统一待办中心

OtherSys:异构系统

WfType:流程类型

WfData:流程数据

SetParam:参数设置

operType

操作类型:

AutoNew:自动创建

New:新建

AutoEdit:自动更新

Edit:编辑

Del:删除

Check:检测

Set:设置

operResult

操作结果:

1:成功

0:失败

message

错误信息

参数示例

{
    "syscode": "NC",
    "flowid": "001",
    "userid": "111"
}

2、统一认证方案说明

2.1、中转页面方案

执行逻辑

通过中转页面与第三方系统对接,按照第三系统的验证方式开发中转页面中的程序。

执行过程如下图:

泛微 RESTful接口 泛微流程接口_java_02

2.2、优缺点

优点:可以灵活的对接各个系统

缺点:有多少个第三方就需要开发多少个不同的中转页面

2.3、推荐实现方案

建议:与各个第三方协商,使用统一的单点方式,例如:

A)使用SHA加密数据:

String token = SHA1Utils.getToken(Prop.getPropValue(“QC699764”,“secrect”) + loginid + timestamp);

B)将加密的结果推送给第三方

String tourl=Appprefixurl+appurlsrc+“&loginid=”+loginid+“&stamp=”+timestamp+“&token=”+token;

C)第三方根据相同的数据加密,结果一致就认证成功,打开流程

Secrect:约定的密钥
Loginid:登录账号
Timestamp:时间戳

回调刷新

第3方流程审批后刷新OA列表回调方法

PC端

PC端如何在oa列表打开异构系统流程提交后,回刷oa列表?

需要第三方表单,在提交自己的流程后,通过【window.location.href=‘oa地址/workflow/request/ViewRequestOS.jsp?reflush=1’】

代码跳到oa的指定jsp上。

请注意:异构系统在跳转到oa的jsp后,自己所有的业务代码均不要再执行,oa的jsp中会处理页面关闭

移动端

动端端如何在oa列表打开异构系统流程提交后,回刷oa列表?

需要第三方表单,在提交自己的流程后,通过【window.location.href=‘oa地址/workflow/workflow/WfRefreshList.jsp’】

代码跳到oa的指定jsp上。

请注意:异构系统在跳转到oa的jsp后,自己所有的业务代码均不要再执行,oa的jsp中会处理页面关闭