|
|
|
@ -17,6 +17,8 @@ import cn.jyjz.xiaoyao.common.base.util.StringUtils;
|
|
|
|
|
import cn.jyjz.xiaoyao.common.base.vo.UserToken;
|
|
|
|
|
import cn.jyjz.xiaoyao.oa.from.service.UserViewapproeService;
|
|
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
|
|
import org.flowable.bpmn.model.MultiInstanceLoopCharacteristics;
|
|
|
|
|
import org.flowable.bpmn.model.UserTask;
|
|
|
|
|
import org.flowable.engine.RepositoryService;
|
|
|
|
|
import org.flowable.engine.repository.ProcessDefinition;
|
|
|
|
|
import org.flowable.engine.runtime.ProcessInstance;
|
|
|
|
@ -29,6 +31,7 @@ import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
import java.util.HashMap;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
|
|
|
|
import java.util.Objects;
|
|
|
|
|
|
|
|
|
|
@Slf4j
|
|
|
|
|
@Service
|
|
|
|
@ -84,6 +87,19 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
|
|
variables.put("businessKey", businessKey);
|
|
|
|
|
|
|
|
|
|
//获取下一个节点
|
|
|
|
|
UserTask userTask = this.flowTaskService.getNextTasks(procDefId);
|
|
|
|
|
if(null != userTask){
|
|
|
|
|
MultiInstanceLoopCharacteristics multiInstance = userTask.getLoopCharacteristics();
|
|
|
|
|
// 会签节点
|
|
|
|
|
if (Objects.nonNull(multiInstance)) {
|
|
|
|
|
if(null != userTask.getCandidateUsers() && userTask.getCandidateUsers().size() > 1){
|
|
|
|
|
variables.put("persons",userTask.getCandidateUsers());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
processInstance = runtimeService.startProcessInstanceById(procDefId, businessKey, variables);
|
|
|
|
|
|
|
|
|
|
if (null != iFormCustomService) {
|
|
|
|
@ -156,6 +172,19 @@ public class FlowInstanceServiceImpl extends FlowServiceFactory implements IFlow
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
|
|
variables.put("businessKey", businessKey);
|
|
|
|
|
|
|
|
|
|
//获取下一个节点
|
|
|
|
|
UserTask userTask = this.flowTaskService.getNextTasks(procDefId);
|
|
|
|
|
if(null != userTask){
|
|
|
|
|
MultiInstanceLoopCharacteristics multiInstance = userTask.getLoopCharacteristics();
|
|
|
|
|
// 会签节点
|
|
|
|
|
if (Objects.nonNull(multiInstance)) {
|
|
|
|
|
if(null != userTask.getCandidateUsers() && userTask.getCandidateUsers().size() > 1){
|
|
|
|
|
variables.put("persons",userTask.getCandidateUsers());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
processInstance = runtimeService.startProcessInstanceById(procDefId, businessKey, variables);
|
|
|
|
|
|
|
|
|
|
if (null != iFormCustomService) {
|
|
|
|
|