update bpm获取工艺路线

master
yinq 2 years ago
parent a4719b519f
commit 4b9e1529f9

@ -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<AbnormalRouterDto> abnormalRouterDtoList = routerService.selectAllDisRouter(abnormalRouterDto);
ArrayList<RouterBpmVO> 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<SfcDispatch> 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<String> sfcDispatchStepList = sfcDispatchList.stream().map(SfcDispatch::getStepId).collect(Collectors.toList());
List<String> 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){

Loading…
Cancel
Save