工作流完善

This commit is contained in:
wangwei
2017-09-18 18:02:06 +08:00
parent 69a783f164
commit af19a2531c
2 changed files with 11 additions and 25 deletions

View File

@@ -44,18 +44,8 @@ public class BpmActivityServiceImp extends FlowableAbstract implements BpmActivi
.orderByProcessDefinitionVersion()
.desc()
.singleResult();
// .list()
// .get(0);
return getActivitiesById(definition.getId(), activityId);
// String procDefId = definition.getId();
// if (activityId == null) {
// return getProcessDefinition(procDefId).getActivities();
// } else {
// List<ActivityImpl> activities = new ArrayList<>();
// activities.add(getProcessDefinition(procDefId).findActivity(activityId));
// return activities;
// }
}
public List<ActivityImpl> getActivitiesById(String processDefId, String activityId) {
@@ -65,9 +55,6 @@ public class BpmActivityServiceImp extends FlowableAbstract implements BpmActivi
} else {
ActivityImpl activity = pde.findActivity(activityId);
if (null == activity) return Collections.emptyList();
// List<ActivityImpl> activities = new ArrayList<>();
// activities.add(activity);
return Collections.singletonList(activity);
}
}

View File

@@ -173,7 +173,7 @@ public class BpmTaskServiceImp extends FlowableAbstract implements BpmTaskServic
if (execution.size() > 0) {
List<Task> tasks = selectNowTask(task.getProcessInstanceId());
// 自定义下一执行人
if (tasks.size() == 0 && !StringUtils.isNullOrEmpty(nextClaim)) claim(tasks.get(0).getId(), nextClaim);
if (tasks.size() == 1 && !StringUtils.isNullOrEmpty(nextClaim)) claim(tasks.get(0).getId(), nextClaim);
else {
for (Task t : tasks) {
addCandidateUser(t.getId(), t.getTaskDefinitionKey(), userId);
@@ -258,9 +258,11 @@ public class BpmTaskServiceImp extends FlowableAbstract implements BpmTaskServic
Task task = selectTaskByTaskId(taskId);
TaskServiceImpl taskServiceImpl = (TaskServiceImpl) taskService;
taskServiceImpl.getCommandExecutor().execute(new JumpTaskCmd(task.getExecutionId(), activity));
// task = selectTaskByTaskId(taskId);
// if (null != task && !StringUtils.isNullOrEmpty(next_claim))
// claim(task.getId(), next_claim);
if(!StringUtils.isNullOrEmpty(next_claim)){
task = selectTaskByTaskId(taskId);
if (null != task)
claim(task.getId(), next_claim);
}
}
@Override
@@ -325,14 +327,11 @@ public class BpmTaskServiceImp extends FlowableAbstract implements BpmTaskServic
Task task = taskService.createTaskQuery().taskId(taskId).singleResult();
ProcessDefinitionEntity entity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(task.getProcessDefinitionId());
List<ActivityImpl> activities = entity.getActivities();
ActivityImpl activity = null;
for (ActivityImpl activity1 : activities) {
if ("userTask".equals(activity1.getProperty("type")) &&
activity1.getProperty("name").equals(task.getName())) {
activity = activity1;
}
}
return activity;
return activities
.stream()
.filter(activity -> "userTask".equals(activity.getProperty("type")) && activity.getProperty("name").equals(task.getName()))
.findFirst()
.orElseThrow(() -> new NotFoundException("获取节点信息失败"));
}
@Override