|
|
@ -234,8 +234,10 @@ public class Flow3Service extends MybatisBaseService<FlowMapper, Flowable> { |
|
|
|
nextUserSid = ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId(); |
|
|
|
adminContains = true; |
|
|
|
} else { |
|
|
|
userSidForNextNode = listResultBean.getData(); |
|
|
|
formVariables.put("approvers", listResultBean.getData()); |
|
|
|
if(!listResultBean.getData().isEmpty()){ |
|
|
|
userSidForNextNode = listResultBean.getData(); |
|
|
|
formVariables.put("approvers", listResultBean.getData()); |
|
|
|
} |
|
|
|
} |
|
|
|
} else { |
|
|
|
//若下一环节用户与系统管理员一致,则自动审批
|
|
|
@ -279,6 +281,7 @@ public class Flow3Service extends MybatisBaseService<FlowMapper, Flowable> { |
|
|
|
isMultiInstanceTaskNext = true; |
|
|
|
|
|
|
|
} else { |
|
|
|
nextUserSid = userSidForNextNode.get(0); |
|
|
|
//查询下一环节用户是否有转办人
|
|
|
|
nextUserSid = change(nextUserSid, bv.getInstanceId()); |
|
|
|
taskService.setAssignee(task2.getId(), nextUserSid);//将下一环节用户放入流程中
|
|
|
@ -296,6 +299,12 @@ public class Flow3Service extends MybatisBaseService<FlowMapper, Flowable> { |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}else{//会签
|
|
|
|
Task task2 = tasks.get(0); |
|
|
|
vo.setTaskId(task2.getId()); |
|
|
|
nodeState = task2.getName(); |
|
|
|
taskDefKey = task2.getTaskDefinitionKey(); |
|
|
|
|
|
|
|
} |
|
|
|
if (!isMultiInstanceTaskNext) { |
|
|
|
//获取该流程所有要走的环节节点
|
|
|
@ -874,10 +883,19 @@ public class Flow3Service extends MybatisBaseService<FlowMapper, Flowable> { |
|
|
|
if (sysUserVos == null || sysUserVos.size() < 1) { |
|
|
|
log.error("下一环节无用户填充管理员用户"); |
|
|
|
return rb; |
|
|
|
}else{ |
|
|
|
StringBuilder nextNodeUserSids = new StringBuilder(); |
|
|
|
for (SysUserVo su : sysUserVos) { |
|
|
|
nextNodeUserSids.append(su.getSid()).append(","); |
|
|
|
} |
|
|
|
//符合条件的用户的sid,拼接的字符串
|
|
|
|
nextNodeUserSids_ = nextNodeUserSids.toString(); |
|
|
|
nextNodeUserSids_ = nextNodeUserSids_.substring(0, nextNodeUserSids_.length() - 1); |
|
|
|
} |
|
|
|
} else { |
|
|
|
if (sysUserVos == null || sysUserVos.size() < 1) { |
|
|
|
continue; |
|
|
|
// continue;
|
|
|
|
nextNodeUserSids_ = ProcDefEnum.DEFAUL_TADMIN_SID.getProDefId(); |
|
|
|
} else { |
|
|
|
StringBuilder nextNodeUserSids = new StringBuilder(); |
|
|
|
for (SysUserVo su : sysUserVos) { |
|
|
|