工作流待办消息推送二开
问题描述:
流程助手在云之家上有标准的全员轻应用,应用能推送EAS的审批信息到云之家,应用的消息推送是这么实现的呢?
解决方案:
这里只说明EAS流程助手如何推送工作流待办、通知、以及待办审批后清理待办的实现。
如果客户有使用移动bos和流程助手,可以看这份第三方APP集成移动BOS应用说明文档;否则可以看以下说明,对工作流的消息进行二开。
此方法只适用EAS8.5(包含)以上版本,其他版本可以看这个文档《EAS消息主动向第三方系统推送消息》
1. 推送审批、决策节点的待办任务消息
使用此功能需要实现一个接口ITaskHandler
接口全路径:com.kingdee.eas.base.message.app.ITaskHandler
接口类所在包名:bs_message-server.jar
实现方法:public void execute(AssignmentCreationEvent ed);
流程走到对应的任务节点,或转交、加签、重新指定执行人等,在任务产生时会调用该方法。其中参数ed包含一些任务信,具体包含的信息可通过调试查看,在该方法内实现向第三方app推送待办消息的逻辑。
修改配置:{EASHOME}eas/server/profiles/serverN/config/handlersconfig.properties
将流程助手处理类更换为自己开发的处理类,如果客户有使用流程助手则添加一个新的配置项,每个server下的配置都要修改;
如果EAS是多机集群,配置文件需要同步修改。
2. 推送通知消息
使用此功能需要实现一个接口MessageListener
接口全路径:com.kingdee.bos.service.message.MessageListener
接口类所在包名:message.jar
实现方法:public abstract int onMessage(Message paramMessage);
这个方法在消息中心获得新的消息的时候会主动调用,如消息节点消息、预警消息、传阅消息、催办消息、最后期限消息等等,其中参数message包含消息,具体包含的信息可通过调试查看,在该方法内实现向第三方app推送消息的逻辑,消息推送成功返回1即可。
修改配置:eas/server/profiles/serverN/config/bosconfig.xml
将listener3类更换为自己开发的处理类,每个server下的配置都要修改,如果有使用流程助手,则添加一个listener4的配置;其他不相干配置不要乱改,避免出现问题,请做好备份工作
如果EAS是多机集群,配置文件需要同步修改
3. 清理第三方app待办任务
使用此功能需要继承一个抽象类:AbstractAssignmentEventHandler
类全路径:com.kingdee.bos.workflow.enactment.handler.AbstractAssignmentEventHandler
类所在包名:workflowcommon.jar
实现方法:
public abstract void execute(AssignmentEvent assignmentEvent, IWfAssignment assignment);
这个方法在任务完成或取消后调用,如审批、跳转、转交、挂起、重新指定执行人等操作,在此方法内实现清理已推送第三方app待办任务消息的逻辑。
修改配置:eas/server/properties/wf_events.xml
将com.kingdee.bos.workflow.handler.AssignmentHandler换成自己的实现类,如果有使用流程助手,则将圈中的两个配置项拷贝多一个,写上自己的实现类
如果EAS是多机集群,配置文件需要同步修改
结语:
以上就是流程助手待办消息的处理实现,现场可根据二开需要自己去实现自己的逻辑。
工作流待办消息推送二开
本文2024-09-22 20:33:46发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-114432.html