From 63bf8258758fe1d9c68a2bee9976c663ab9eab5b Mon Sep 17 00:00:00 2001 From: "xiangwei.zhang" <752558143@qq.com> Date: Thu, 14 Nov 2024 18:49:36 +0800 Subject: [PATCH] =?UTF-8?q?=E7=82=B9=E6=A3=80=E6=A0=A1=E9=AA=8C=E8=AE=BE?= =?UTF-8?q?=E5=A4=87id?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/busi/MesSpotCheckOrderService.java | 23 ++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java index 3fcf895..8df4a72 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesSpotCheckOrderService.java @@ -28,6 +28,7 @@ import cn.estsh.impp.framework.boot.exception.ImppBusiException; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.util.ValidatorBean; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections.map.HashedMap; import org.apache.commons.collections4.ListUtils; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -81,6 +82,8 @@ public class MesSpotCheckOrderService implements IMesSpotCheckOrderService { @Autowired private IMesEquipmentExtService mesEquipmentExtService; + @Autowired + private MesEquipmentRepository mesEquipmentRepository; @Override public ListPager querySpotCheckOrder(MesSpotCheckOrder spotCheckOrder, Pager pager) { @@ -90,6 +93,19 @@ public class MesSpotCheckOrderService implements IMesSpotCheckOrderService { pager = PagerHelper.getPager(pager, spotCheckOrderRepository.findByHqlWhereCount(packBean)); List resultList = spotCheckOrderRepository.findByHqlWherePage(packBean, pager); + if (CollectionUtils.isEmpty(resultList)) { + return new ListPager<>(resultList, pager); + } + List equipmentlist = resultList.stream().map(MesSpotCheckOrder::getEquipCode).collect(Collectors.toList()); + + DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(spotCheckOrder.getOrganizeCode()); + DdlPreparedPack.getInPackList(equipmentlist, "equipmentCode", ddlPackBean); + List mesEquipments = mesEquipmentRepository.findByHqlWhere(ddlPackBean); + Map> map = mesEquipments.stream().collect(Collectors.groupingBy(MesEquipment::getEquipmentCode)); + + resultList.forEach(mesSpotCheckOrder -> { + mesSpotCheckOrder.setEquipId(map.get(mesSpotCheckOrder.getEquipCode()).get(0).getEquipId()); + }); return new ListPager<>(resultList, pager); @@ -297,13 +313,14 @@ public class MesSpotCheckOrderService implements IMesSpotCheckOrderService { spotCheckOrderPartRepository.saveAll(model.getOrderPartList()); Integer orderResult = MesExtEnumUtil.SPOT_CHECK_ORDER_RESULT_TYPE.OK.getValue(); + // 点检单的结果 for (MesSpotCheckOrderResult result : model.getOrderResultList()) { if (StringUtils.isEmpty(result.getSpotCheckRealValue())) { throw new ImppBusiException(String.format("点检单明细未填写完成,请继续质检", result.getSpotCheckRealValue())); } - - if (result.getIsTolerance() == MesCommonConstant.TRUE_INTEGER && orderResult == MesExtEnumUtil.SPOT_CHECK_ORDER_RESULT_TYPE.OK.getValue()) { + if (Objects.equals(result.getSpotCheckResult(), "NOK") && Objects.equals(MesExtEnumUtil.SPOT_CHECK_ORDER_RESULT_TYPE.OK.getValue(), orderResult)) { + // 如果有NOK的则不用管,全OK才是OK,否则就是NOK orderResult = MesExtEnumUtil.SPOT_CHECK_ORDER_RESULT_TYPE.NOK.getValue(); } result.setSpotCheckTime(TimeTool.getNowTime(true)); @@ -568,6 +585,8 @@ public class MesSpotCheckOrderService implements IMesSpotCheckOrderService { //查询点检明细 DdlPackBean packBean = DdlPackBean.getDdlPackBean(spotCheckOrder.getOrganizeCode()); DdlPreparedPack.getNumEqualPack(spotCheckOrder.getId(), "pid", packBean); + DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"seqCode"}, packBean); + List orderResultList = spotCheckOrderResultRepository.findByHqlWhere(packBean); //查询点检零件