工作流预测下一步参与人原创
金蝶云社区-吴锐雄
吴锐雄
3人赞赏了该文章 104次浏览 未经作者许可,禁止转载编辑于2024年06月07日 21:16:16


使用WorkflowServiceHelper.getNextUseableUserAndScope进行预测,入参是taskid和决策项。


public class AddDecisonWfPlugin implements IWorkflowPlugin {


    @Override
    public void afterHandleTask(AgentTask task, String evtName, Map<String, Object> executeParam) {
        Long currentTaskId = task.getId();
        // 预测下一步参与人,当我的决策项是Consent(同意)时,取到下一步的参与人
        Map<String, Map<String, List<Long>>> nextTaskMap = WorkflowServiceHelper.getNextUseableUserAndScope(currentTaskId, "Consent");
        if (nextTaskMap != null && nextTaskMap.size() > 0) {
            String nextTaskNo = nextTaskMap.keySet().iterator().next();
            Map<String, List<Long>> userableUserMap = nextTaskMap.get(nextTaskNo);
            if (userableUserMap != null && userableUserMap.size() > 0) {
                List<Long> userList = userableUserMap.get("useableUser");
                if (userList.size() > 0) {
                    addSi(currentTaskId, userList.get(0));
                }
            }
        }
        System.out.println();
    }
}


赞 3