diff --git a/src/main/java/neatlogic/module/process/thread/ProcessTaskSlaThread.java b/src/main/java/neatlogic/module/process/thread/ProcessTaskSlaThread.java index e45bed95538aa1eb40eda3d947e7f31664a007a6..73131d1806ffe234b336f15f54b9ebdd32a793ea 100644 --- a/src/main/java/neatlogic/module/process/thread/ProcessTaskSlaThread.java +++ b/src/main/java/neatlogic/module/process/thread/ProcessTaskSlaThread.java @@ -434,23 +434,29 @@ public class ProcessTaskSlaThread extends NeatLogicThread { private List slaIsInvalid(Long processTaskId) { List resultList = new ArrayList<>(); ProcessTaskSlaVo processTaskSlaVo = new ProcessTaskSlaVo(); + ProcessTaskStepVo startProcessTaskStep = processTaskMapper.getStartProcessTaskStepByProcessTaskId(processTaskId); List allSlaIdList = processTaskSlaMapper.getSlaIdListByProcessTaskId(processTaskId); for (Long slaId : allSlaIdList) { processTaskSlaVo.setId(slaId); boolean isActive = false; List processTaskStepIdList = processTaskSlaMapper.getProcessTaskStepIdListBySlaId(slaId); - for (Long processTaskStepId : processTaskStepIdList) { - List processTaskStepRelList = processTaskMapper.getProcessTaskStepRelByToId(processTaskStepId); - for (ProcessTaskStepRelVo processTaskStepRelVo : processTaskStepRelList) { - if (processTaskStepRelVo.getType().equals(ProcessFlowDirection.FORWARD.getValue())) { - if (!Objects.equals(processTaskStepRelVo.getIsHit(), -1)) { - isActive = true; - break; + if (processTaskStepIdList.contains(startProcessTaskStep.getId())) { + // 时效关联开始步骤,则一定会被激活 + isActive = true; + } else { + for (Long processTaskStepId : processTaskStepIdList) { + List processTaskStepRelList = processTaskMapper.getProcessTaskStepRelByToId(processTaskStepId); + for (ProcessTaskStepRelVo processTaskStepRelVo : processTaskStepRelList) { + if (processTaskStepRelVo.getType().equals(ProcessFlowDirection.FORWARD.getValue())) { + if (!Objects.equals(processTaskStepRelVo.getIsHit(), -1)) { + isActive = true; + break; + } } } - } - if (isActive) { - break; + if (isActive) { + break; + } } } if (isActive) {