From 4b9e1529f91f69ce51603ce3207d4f29144125af Mon Sep 17 00:00:00 2001 From: yinq <1345442242@qq.com> Date: Mon, 20 Feb 2023 15:31:25 +0800 Subject: [PATCH] =?UTF-8?q?update=20bpm=E8=8E=B7=E5=8F=96=E5=B7=A5?= =?UTF-8?q?=E8=89=BA=E8=B7=AF=E7=BA=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/AbnormalBillController.java | 31 ++++++++++--------- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java index 0fa8ae3c..2f8e92fe 100644 --- a/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java +++ b/anomaly/src/main/java/com/foreverwin/mesnac/anomaly/controller/AbnormalBillController.java @@ -39,10 +39,10 @@ import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.time.LocalDateTime; +import java.util.*; import java.util.ArrayList; -import java.util.ArrayList; -import java.util.List; -import java.util.Map; +import java.util.stream.Collectors; +import java.util.stream.IntStream; /** * @@ -379,6 +379,7 @@ public class AbnormalBillController { List abnormalRouterDtoList = routerService.selectAllDisRouter(abnormalRouterDto); ArrayList routerBpmVOs = new ArrayList<>(); for (AbnormalRouterDto routerDto : abnormalRouterDtoList) { + Boolean isStepUsed = false; RouterBpmVO bpmVO = new RouterBpmVO(); bpmVO.setAbnormalNo(routerDto.getAbnormalNo()); bpmVO.setRouter(routerDto.getRouter()); @@ -398,19 +399,19 @@ public class AbnormalBillController { //判断当前SFC是否工序步骤标识重复 if (StringUtil.notBlank(routerBpmVO.getSfc())){ List sfcDispatchList = SpringUtil.getBean(SfcDispatchService.class).findSfcDispatch(site, routerBpmVO.getSfc(), null, null); - for (SfcDispatch sfcDispatch : sfcDispatchList) { - for (RouterStepDto routerStepDto : routerOperationByRouterBo) { - if (sfcDispatch.getStepId().equals(routerStepDto.getStepId())){ - //保存操作日志 - StringUtil.saveOperLog("BPM获取工艺路线接口,SFC:" + routerBpmVO.getSfc(),"bpmGetRouting", - routerBpmVO.toString(),null,"此产品条码工序步骤标识重复:" + routerBpmVO.getSfc() + ",请重新出方案!"); - return new ResultVo(ResultCode.FAILED,"此SFC产品条码工序步骤标识重复:" + routerBpmVO.getSfc() + ",请重新出方案!"); - } - } - } + List sfcDispatchStepList = sfcDispatchList.stream().map(SfcDispatch::getStepId).collect(Collectors.toList()); + List routerStepList = routerOperationByRouterBo.stream().map(RouterStepDto::getStepId).collect(Collectors.toList()); + isStepUsed = IntStream.range(0, Math.min(sfcDispatchStepList.size(), routerStepList.size())) + .anyMatch(i -> sfcDispatchStepList.get(i).equals(routerStepList.get(i))); + } + if (!isStepUsed){ + bpmVO.setRouterStep(routerOperationByRouterBo); + routerBpmVOs.add(bpmVO); + }else { + //保存操作日志 + StringUtil.saveOperLog("BPM获取工艺路线接口,SFC:" + routerBpmVO.getSfc(),"bpmGetRouting", + routerBpmVO.toString(),null,"此产品条码工序步骤标识重复:" + routerBpmVO.getSfc() + ",请重新出方案!"); } - bpmVO.setRouterStep(routerOperationByRouterBo); - routerBpmVOs.add(bpmVO); } return new ResultVo(ResultCode.SUCCESS,routerBpmVOs); }catch(Exception e){