待办消息如何与第三方APP集成
工作流中的待办任务,可以采取两种方式和第三方系统进行集成。
第一种:通过API拉取苍穹待办
在客户的第三方列表界面调用苍穹工作流提供的待办/已办API查询某个人的待办列表,直接格式化融合显示,获取的结果中已经包含了苍穹审批界面的URL,可以直接打开URL进行审批。如果是在移动端进行显示,建议URL参数中增加&device=mob,如果是PC段建议增加参数&device=pc.
拉取的方式不在第三方存储数据,数据量较大时,需要分页拉取。此种方式需要做单点登录工作,然后才能调用API拉取数据
1. 拉取待办API: getToHandleTasksByUserId
调用方式:https://ierp.kingdee.com:2024/mainbiz/kapi/app/wf/getToHandleTasksByUserId?body={"start":0,"limit":10,"billno":"test","subject":"test","entityName":"test"}&access_token={access_token}
参数示例说明:
access_token: 某个用户的单点登录之后获取的token,拉取当前用户的待办任务;
start/limit:从第几个开始,拉取多少个待办;
billno: 根据单据编号查询;
subject:根据任务主题查询;
entityName:根据单据名称进行查询。
返回值为json,拉取的结果如下图:
2. 拉取已办任务API: getHandledTasksByUserId
调用方式:https://ierp.kingdee.com:2024/mainbiz/kapi/app/wf/getHandledTasksByUserId?body={"start":0,"limit":10,"billno":"test","subject":"test","entityName":"test"}&access_token={access_token}{access_token}
参数示例说明:
access_token: 某个用户的单点登录之后获取的token,拉取当前用户的待办任务;
start/limit:从第几个开始,拉取多少个待办;
billno: 根据单据编号查询;
subject:根据任务主题查询;
entityName:根据单据名称进行查询。
返回值为json,拉取的结果如下图:
3. 获取待办&已办的数量:getTaskCountByType
调用方式:https://ierp.kingdee.com:2024/mainbiz/kapi/app/wf/getTaskCountByType?body={"type":"toHandle"}
参数示例说明:
type: toHandle表示待办任务数量/handled表示已办任务数量。
返回值为json,拉取的结果如下图:
第二种:通过扩展苍穹消息渠道推送待办
除了可以按照默认的渠道【云之家、短信、邮件】发送之外,也可以自定义和扩展消息渠道进行发送。自定义消息渠道需要一个实现类,在这个实现类中,处理待办相关内容。实现类需要继承:
kd.bos.workflow.engine.msg.handler.AbstractMessageServiceHandler
此接口中的关键说明:
MessageServiceConfig:为消息渠道中定义的渠道相关信息,包括渠道编码,渠道名称,是否启用,自定义参数等;
createToDo:工作流中的待办任务创建之后,会调用此接口,将待办任务传递给响应的渠道做处理;
dealToDo:工作流中将待办变成已办的时候,会调用此接口进行待办变已办的处理;
deleteToDo:工作流中撤回,或者多人收到任务,其中一人审批,删除其他人的待办时,调用此接口;
sendMessage:发送预警,通知,报警等消息时,调用此接口进行当前渠道处理。
推送过去的待办消息,可以将消息存储到第三方的数据库中,也可以直接发送第三方的消息. 具体可以参考云之家的实现类(YunzhijiaServiceHandler)。
所有的消息渠道在工作流引擎中均通过异步消息处理,如果失败,会重试三次,三次也失败会进入异常中心等待人工处理。消息的失败不会影响流程的流转,可以在流转日志中查看对应渠道的消息是否执行成功。
点击某个流转日志进入,可以从相关数据中看到关键信息。state=NEW表示创建待办任务/DEAL表示待办变已办/DELETE表示删除待办。service=email表示当前这个消息是发送的邮件,email为消息渠道的编码。
推送的消息也包含相关的URL信息,在第三方的APP中打开苍穹任务链接,需要先做单点登录,然后点击链接,直接打开苍穹的审批界面,支持打开移动端审批界面,也支持打开PC端审批界面。审批完成后,需要刷新待办列表。
相关连接:
待办消息如何与第三方APP集成
本文2024-09-23 00:57:24发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-142831.html