hotfix - 调整任务状态处理逻辑
This commit is contained in:
parent
57d812d509
commit
3c89d19667
@ -74,8 +74,6 @@ import static cn.axzo.workflow.core.common.enums.BpmErrorCode.PROCESS_INSTANCE_I
|
||||
import static cn.axzo.workflow.core.common.enums.BpmErrorCode.PROCESS_INSTANCE_NOT_EXISTS;
|
||||
import static cn.axzo.workflow.core.common.enums.BpmErrorCode.TASK_COMPLETE_FAIL_ASSIGN_NOT_SELF;
|
||||
import static cn.axzo.workflow.core.common.enums.BpmErrorCode.TASK_COMPLETE_FAIL_NOT_EXISTS;
|
||||
import static cn.axzo.workflow.core.common.enums.BpmProcessInstanceResultEnum.APPROVED;
|
||||
import static cn.axzo.workflow.core.common.enums.BpmProcessInstanceResultEnum.CANCELLED;
|
||||
import static cn.axzo.workflow.core.common.enums.BpmProcessInstanceResultEnum.REJECTED;
|
||||
import static cn.axzo.workflow.core.common.enums.BpmProcessInstanceResultEnum.valueOfStatus;
|
||||
import static cn.axzo.workflow.core.common.utils.BpmCollectionUtils.convertSet;
|
||||
@ -389,20 +387,19 @@ public class BpmnTaskServiceImpl implements BpmnTaskService {
|
||||
|
||||
Set<String> taskDefinitionKeys = new HashSet<>();
|
||||
int count = 0;
|
||||
BpmProcessInstanceResultEnum finalBusinessStatus = valueOfStatus(instance.getBusinessStatus());
|
||||
BpmProcessInstanceResultEnum processBusinessStatus = valueOfStatus(instance.getBusinessStatus());
|
||||
for (BpmnHistoricTaskInstanceVO vo : vos) {
|
||||
if (count == 0 || taskDefinitionKeys.contains(vo.getTaskDefinitionKey())) {
|
||||
vo.setResult(finalBusinessStatus);
|
||||
if (Objects.nonNull(vo.getEndTime())) {
|
||||
vo.setResult((BpmProcessInstanceResultEnum) instance.getProcessVariables().getOrDefault(TASK_COMPLETE_OPERATION_TYPE + vo.getTaskId(), APPROVED));
|
||||
}
|
||||
if (Objects.nonNull(vo.getEndTime()) && !Objects.equals(finalBusinessStatus, REJECTED)
|
||||
&& !Objects.equals(finalBusinessStatus, CANCELLED)) {
|
||||
vo.setResult(APPROVED);
|
||||
}
|
||||
} else {
|
||||
vo.setResult(APPROVED);
|
||||
vo.setResult(processBusinessStatus);
|
||||
if (Objects.nonNull(vo.getEndTime())) {
|
||||
// 只有拒绝时, 为指定的 taskId 设置过拒绝变量
|
||||
vo.setResult((BpmProcessInstanceResultEnum) instance.getProcessVariables().getOrDefault(TASK_COMPLETE_OPERATION_TYPE + vo.getTaskId(), processBusinessStatus));
|
||||
}
|
||||
// if (count == 0 || taskDefinitionKeys.contains(vo.getTaskDefinitionKey())) {
|
||||
// vo.setResult(processBusinessStatus);
|
||||
//
|
||||
// } else {
|
||||
// vo.setResult(APPROVED);
|
||||
// }
|
||||
taskDefinitionKeys.add(vo.getTaskDefinitionKey());
|
||||
List<Comment> taskComments = commentByTaskIdMap.getOrDefault(vo.getTaskId(), Collections.emptyList());
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user