审核节点任务创建之后,使用工作流插件自动加签
一、需求
在进入审核节点后,自动加签
二、思路与方案
1.需要使用工作流插件,在任务创建之后,监听afterHandleTask事件,在afterHandleTask事件中完成加签。
2.加签可以使用WorkflowServiceHelper的addSign方法进行加签。
三、实现过程
1.添加工作流插件,执行时机为“任务创建之后”。
2.编写工作流插件
监听afterHandleTask事件,使用WorkflowServiceHelper工具类的getNextUseableUserAndScope方法查询下一步参与人,用addSign方法进行加签。
import kd.bos.dataentity.entity.DynamicObject; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper; import kd.bos.servicehelper.workflow.WorkflowServiceHelper; import kd.bos.workflow.api.AgentExecution; import kd.bos.workflow.api.AgentTask; import kd.bos.workflow.engine.dynprocess.AddSignInfo; import kd.bos.workflow.engine.extitf.IWorkflowPlugin; import java.util.*; // 自动加签 public class AddDecisonWfPlugin implements IWorkflowPlugin { @Override public void afterHandleTask(AgentTask task, String evtName, Map<String, Object> executeParam) { Long currentTaskId = task.getId(); // 获取当前参与人 List<Long> userList = WorkflowServiceHelper.getApproverByBusinessKey(task.getBusinessKey()); if (userList.size() > 0) { addSi(currentTaskId, userList.get(0)); } } private void addSi(Long currentTaskId, Long ownerId) { //加签信息 AddSignInfo addSignInfo = new AddSignInfo(); //加签说明 Map<String, String> addSingMsg = new HashMap<>(); addSingMsg.put("zh_CN","加签"); addSingMsg.put("zh_TW","加签"); addSingMsg.put("en_US","加签"); addSignInfo.setAddSingMsg(addSingMsg); //前加签 addSignInfo.setAddSignType("addsignbefore"); //是否允许再加签 addSignInfo.setAllowAddSign(false); // 加签处理方式 // one: 单人单节点加签 addSignInfo.setAddSignDealType("one"); // 会审模式 passByOne: 一票通过 addSignInfo.setYzjType("passByOne"); List<Long> userIds = new ArrayList<>(); // 查询用户名为张三的用户 QFilter qFilter = new QFilter("name", QCP.equals,"张三"); DynamicObject bosUser = BusinessDataServiceHelper.loadSingle("bos_user", qFilter.toArray()); // 本案例中,加签给张三,开发者可以根据自身业务需求,给指导人员加签 userIds.add(bosUser.getLong("id")); addSignInfo.setUserIds(userIds); // 设置OwnerId,必须设置一个当前参与人 addSignInfo.setOwnerId(ownerId); String result = WorkflowServiceHelper.addSign(currentTaskId, addSignInfo); } }
四、效果图
当一级节点审批通过时,二级审批节点创建时,会自动加签
审批之后,发现自动加签
审核节点任务创建之后,使用工作流插件自动加签
一、需求在进入审核节点后,自动加签二、思路与方案1.需要使用工作流插件,在任务创建之后,监听afterHandleTask事件,在afterHandleTask事...
点击下载文档
上一篇:金蝶云·苍穹开发者工具简介下一篇:如何实现基础资料F7过滤
本文2024-09-23 00:17:47发表“云苍穹知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-cangqiong-138560.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章