使用宇道工作流,请问自动跳过审批人为空?
网上是使用这种方式
Map<String, Object> varMap = new HashMap<>();
varMap.put("skip", false);
varMap.put("_FLOWABLE_SKIP_EXPRESSION_ENABLED", true);
String procId = runtimeService.startProcessInstanceByKey("simpleTextOnly", varMap).getId();
-------------------------------------------------------------------------------------------------------------------------------
如果是想要重新调整审批人为空时的逻辑,可以通过 TaskListener 监听器的实现类来代替全局监听的作用,以下代码可以参考下,记得移除全局监听器的逻辑
`
@Slf4j
@Component
public class SystemTaskListener implements TaskListener {
@Resource
private TaskService taskService;
@Override
public void notify(DelegateTask delegateTask) {
String assignee = delegateTask.getAssignee();
if (StringUtils.isEmpty(assignee)) {//为空时跳过
taskService.setAssignee(delegateTask.getId(), "");
taskService.complete(delegateTask.getId());
return;
}
//更换执行人
//taskService.setAssignee(delegateTask.getId(), "new_userId");
}
}