From c4b7ecaa432101fc895a8a750537c4b435ee7da0 Mon Sep 17 00:00:00 2001 From: yjz <3131811435@qq.com> Date: Thu, 25 Jan 2024 16:11:13 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E6=A0=87=E5=87=86=E5=8F=98=E6=9B=B4?= =?UTF-8?q?=E6=B5=81=E7=A8=8B):=2079949?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/ProcessFbEntryChangeServiceImpl.java | 25 +++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java index 313aa9ba..8b31858c 100644 --- a/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java +++ b/laws-modules/src/main/java/com/jero/modules/activiti/process/fb/service/impl/ProcessFbEntryChangeServiceImpl.java @@ -12,6 +12,7 @@ import com.jero.common.constant.enums.YesOrNoEnum; import com.jero.common.exception.JeroBootException; import com.jero.common.util.UUIDUtils; import com.jero.modules.activiti.entity.ProcessAll; +import com.jero.modules.activiti.enums.ProcessStatusEnum; import com.jero.modules.activiti.enums.ProcessTypeEnum; import com.jero.modules.activiti.process.common.entity.ProcessDraft; import com.jero.modules.activiti.process.common.service.ProcessDraftService; @@ -178,6 +179,8 @@ public class ProcessFbEntryChangeServiceImpl extends ServiceImpl map = JSON.parseObject(businessJson, Map.class); + if ("2".equals(businessData.getOperateType())) { + List list = list( + new LambdaQueryWrapper() + .ne(ProcessFbEntryChange::getId, businessId) + .eq(ProcessFbEntryChange::getStandardNumber, map.get(FieldCommon.STANDARD_NUMBER)) + .eq(ProcessFbEntryChange::getOperateType, "2")); + if (!list.isEmpty()){ + int count = processAllService.count( + new LambdaQueryWrapper() + .in(ProcessAll::getProjectId, list.stream().map(ProcessFbEntryChange::getId).collect(Collectors.toList())) + .eq(ProcessAll::getPrcStatus, ProcessStatusEnum.INCOMPLETE.getValue())); + if (count > 0){ + throw new JeroBootException("标准编号已在标准变更流程进行中,不可重复发起!"); + } + } + } + } + private void duplicateCheck(String businessId) { ProcessFbEntryChange businessData = getById(businessId); String businessJson = businessData.getBusinessJson();