|
@@ -1,7 +1,7 @@
|
|
|
package com.flow.service.impl;
|
|
|
|
|
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
-import com.flow.entity.Activity;
|
|
|
+import com.flow.entity.FlowActivity;
|
|
|
import com.flow.entity.FlowDefine;
|
|
|
import com.flow.entity.FlowTask;
|
|
|
import com.flow.entity.node.ApprovalNode;
|
|
@@ -36,7 +36,7 @@ public class FlowActivityServiceImpl implements FlowActivityService {
|
|
|
private HistoryService historyService;
|
|
|
|
|
|
@Override
|
|
|
- public List<Activity> records(String instanceId) {
|
|
|
+ public List<FlowActivity> records(String instanceId) {
|
|
|
ProcessInstance processInstance = runtimeService.createProcessInstanceQuery().processInstanceId(instanceId).singleResult();
|
|
|
if (Objects.isNull(processInstance)) {
|
|
|
return historyRecords(instanceId);
|
|
@@ -51,38 +51,38 @@ public class FlowActivityServiceImpl implements FlowActivityService {
|
|
|
.list();
|
|
|
return list.stream()
|
|
|
.map(e -> {
|
|
|
- Activity activity = new Activity(e);
|
|
|
- activity.setMulti(ApprovalMultiEnum.SEQUENTIAL);
|
|
|
- if ("userTask".equals(activity.getActivityType())) {
|
|
|
+ FlowActivity flowActivity = new FlowActivity(e);
|
|
|
+ flowActivity.setMulti(ApprovalMultiEnum.SEQUENTIAL);
|
|
|
+ if ("userTask".equals(flowActivity.getActivityType())) {
|
|
|
Optional<FlowTask> optional = flowTasks.stream().filter(t -> t.getId().equals(e.getTaskId())).findFirst();
|
|
|
- optional.ifPresent(flowTask -> activity.setStatus(flowTask.getStatus()));
|
|
|
- String assignee = activity.getAssignee();
|
|
|
+ optional.ifPresent(flowTask -> flowActivity.setStatus(flowTask.getStatus()));
|
|
|
+ String assignee = flowActivity.getAssignee();
|
|
|
if (Objects.isNull(assignee)) {
|
|
|
- activity.setAssignee(processInstance.getStartUserId());
|
|
|
+ flowActivity.setAssignee(processInstance.getStartUserId());
|
|
|
}
|
|
|
ApprovalNode approvalNode = flowDefine.findFlowNodeOfType(ApprovalNode.class, e.getActivityId());
|
|
|
if (Objects.nonNull(approvalNode)) {
|
|
|
ApprovalMultiEnum multi = approvalNode.getMulti();
|
|
|
- activity.setMulti(multi);
|
|
|
+ flowActivity.setMulti(multi);
|
|
|
}
|
|
|
- } else if ("copyServiceTask".equals(activity.getActivityType())) {
|
|
|
- activity.setMulti(ApprovalMultiEnum.JOINT);
|
|
|
- } else if ("startEvent".equals(activity.getActivityType())) {
|
|
|
- activity.setAssignee(processInstance.getStartUserId());
|
|
|
- } else if ("jumpServiceTask".equals(activity.getActivityType())) {
|
|
|
- activity.setAssignee("admin");
|
|
|
- if (StringUtils.isBlank(activity.getDeleteReason())) {
|
|
|
- activity.setDeleteReason("<span>跳转失败 <span class='color-error'>不满足跳转条件</span></span>");
|
|
|
+ } else if ("copyServiceTask".equals(flowActivity.getActivityType())) {
|
|
|
+ flowActivity.setMulti(ApprovalMultiEnum.JOINT);
|
|
|
+ } else if ("startEvent".equals(flowActivity.getActivityType())) {
|
|
|
+ flowActivity.setAssignee(processInstance.getStartUserId());
|
|
|
+ } else if ("jumpServiceTask".equals(flowActivity.getActivityType())) {
|
|
|
+ flowActivity.setAssignee("admin");
|
|
|
+ if (StringUtils.isBlank(flowActivity.getDeleteReason())) {
|
|
|
+ flowActivity.setDeleteReason("<span>跳转失败 <span class='color-error'>不满足跳转条件</span></span>");
|
|
|
}
|
|
|
}
|
|
|
- return activity;
|
|
|
+ return flowActivity;
|
|
|
})
|
|
|
- .sorted(Comparator.comparing(Activity::getId))
|
|
|
+ .sorted(Comparator.comparing(FlowActivity::getId))
|
|
|
.collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
@Override
|
|
|
- public List<Activity> historyRecords(String instanceId) {
|
|
|
+ public List<FlowActivity> historyRecords(String instanceId) {
|
|
|
HistoricProcessInstance historicProcessInstance = historyService.createHistoricProcessInstanceQuery()
|
|
|
.processInstanceId(instanceId)
|
|
|
.singleResult();
|
|
@@ -96,33 +96,33 @@ public class FlowActivityServiceImpl implements FlowActivityService {
|
|
|
.list();
|
|
|
return list.stream()
|
|
|
.map(e -> {
|
|
|
- Activity activity = new Activity(e);
|
|
|
- activity.setMulti(ApprovalMultiEnum.SEQUENTIAL);
|
|
|
- if ("userTask".equals(activity.getActivityType())) {
|
|
|
+ FlowActivity flowActivity = new FlowActivity(e);
|
|
|
+ flowActivity.setMulti(ApprovalMultiEnum.SEQUENTIAL);
|
|
|
+ if ("userTask".equals(flowActivity.getActivityType())) {
|
|
|
Optional<FlowTask> optional = flowTasks.stream().filter(t -> t.getId().equals(e.getTaskId())).findFirst();
|
|
|
- optional.ifPresent(flowTask -> activity.setStatus(flowTask.getStatus()));
|
|
|
- String assignee = activity.getAssignee();
|
|
|
+ optional.ifPresent(flowTask -> flowActivity.setStatus(flowTask.getStatus()));
|
|
|
+ String assignee = flowActivity.getAssignee();
|
|
|
if (Objects.isNull(assignee)) {
|
|
|
- activity.setAssignee(historicProcessInstance.getStartUserId());
|
|
|
+ flowActivity.setAssignee(historicProcessInstance.getStartUserId());
|
|
|
}
|
|
|
ApprovalNode approvalNode = flowDefine.findFlowNodeOfType(ApprovalNode.class, e.getActivityId());
|
|
|
if (Objects.nonNull(approvalNode)) {
|
|
|
ApprovalMultiEnum multi = approvalNode.getMulti();
|
|
|
- activity.setMulti(multi);
|
|
|
+ flowActivity.setMulti(multi);
|
|
|
}
|
|
|
- } else if ("copyServiceTask".equals(activity.getActivityType())) {
|
|
|
- activity.setMulti(ApprovalMultiEnum.JOINT);
|
|
|
- } else if ("startEvent".equals(activity.getActivityType())) {
|
|
|
- activity.setAssignee(historicProcessInstance.getStartUserId());
|
|
|
- } else if ("jumpServiceTask".equals(activity.getActivityType())) {
|
|
|
- activity.setAssignee("admin");
|
|
|
- if (StringUtils.isBlank(activity.getDeleteReason())) {
|
|
|
- activity.setDeleteReason("<span>跳转失败 <span class='color-error'>不满足跳转条件</span></span>");
|
|
|
+ } else if ("copyServiceTask".equals(flowActivity.getActivityType())) {
|
|
|
+ flowActivity.setMulti(ApprovalMultiEnum.JOINT);
|
|
|
+ } else if ("startEvent".equals(flowActivity.getActivityType())) {
|
|
|
+ flowActivity.setAssignee(historicProcessInstance.getStartUserId());
|
|
|
+ } else if ("jumpServiceTask".equals(flowActivity.getActivityType())) {
|
|
|
+ flowActivity.setAssignee("admin");
|
|
|
+ if (StringUtils.isBlank(flowActivity.getDeleteReason())) {
|
|
|
+ flowActivity.setDeleteReason("<span>跳转失败 <span class='color-error'>不满足跳转条件</span></span>");
|
|
|
}
|
|
|
}
|
|
|
- return activity;
|
|
|
+ return flowActivity;
|
|
|
})
|
|
|
- .sorted(Comparator.comparing(Activity::getId))
|
|
|
+ .sorted(Comparator.comparing(FlowActivity::getId))
|
|
|
.collect(Collectors.toList());
|
|
|
}
|
|
|
}
|