From c3631d33d9a70580c118dd85cea96f3b8795de98 Mon Sep 17 00:00:00 2001 From: caihaohan Date: Fri, 26 Jan 2024 14:53:48 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E7=AB=8B=E9=A1=B9=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=20=E5=AE=8C=E6=88=90=E6=97=B6=E9=97=B4?= =?UTF-8?q?=E5=8F=98=E6=9B=B4=E4=B8=8D=E6=92=A4=E5=9B=9E=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessEsInitChangeServiceImpl.java | 45 ++++++++++--------- 1 file changed, 23 insertions(+), 22 deletions(-) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java index f1ea168c..034fc333 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/esInitChange/service/impl/ProcessEsInitChangeServiceImpl.java @@ -367,7 +367,6 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl espIdSet = new HashSet<>(); // 如果是变更流程,则需要判断计划是否有效 if (ESPProjectType.MERGE.getValue().equals(initChange.getProjectType())) { - // 如果是合并流程,需要判断计划是否已经逾期 espIdSet.add(initChange.getStandardIdOne()); espIdSet.add(initChange.getStandardIdTwo()); } else { @@ -385,28 +384,30 @@ public class ProcessEsInitChangeServiceImpl extends ServiceImpl espIdList = initChangeData.getDataList().stream().map(ProcessEsInitChange::getEspId).collect(Collectors.toList()); - // 未开始的企标计划不需要强制撤回 - espService.listByIds(espIdList).forEach(esp -> { - if (esp.getProjectStatus().equals(ESPProjectStatus.NOT_STARTED.getValue())) { - espIdList.remove(esp.getId()); + // 如果是变更流程且不是完成时间变更,则需要撤回制修订流程 + if (!ESPProjectType.COMPLETE_TIME_CHANGE.getValue().equals(initChange.getProjectType())) { + List espIdList = initChangeData.getDataList().stream().map(ProcessEsInitChange::getEspId).collect(Collectors.toList()); + // 未开始的企标计划不需要强制撤回 + espService.listByIds(espIdList).forEach(esp -> { + if (esp.getProjectStatus().equals(ESPProjectStatus.NOT_STARTED.getValue())) { + espIdList.remove(esp.getId()); + } + }); + if (espIdList.isEmpty()) { + return; + } + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); + lambdaQueryWrapper.in(ProcessEsRevision::getEspId, espIdList); + lambdaQueryWrapper.eq(ProcessEsRevision::getDelFlag, YesOrNoEnum.NO.getValue()); + List enactList = revisionService.list(lambdaQueryWrapper); + if (enactList == null || enactList.isEmpty()) { + return; + } + for (ProcessEsRevision esRevision : enactList) { + String processInstanceId = esRevision.getProcessInstanceId(); + processAllService.forcedWithdrawal(processInstanceId); + processAllService.updateDraftStatusByProjectId(esRevision.getId()); } - }); - if (espIdList.isEmpty()) { - return; - } - LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>(); - lambdaQueryWrapper.in(ProcessEsRevision::getEspId, espIdList); - lambdaQueryWrapper.eq(ProcessEsRevision::getDelFlag, YesOrNoEnum.NO.getValue()); - List enactList = revisionService.list(lambdaQueryWrapper); - if (enactList == null || enactList.isEmpty()) { - return; - } - for (ProcessEsRevision esRevision : enactList) { - String processInstanceId = esRevision.getProcessInstanceId(); - processAllService.forcedWithdrawal(processInstanceId); - processAllService.updateDraftStatusByProjectId(esRevision.getId()); } } }