From f32028f27d29ba1de6cb2db09d682512c2f82a58 Mon Sep 17 00:00:00 2001 From: gsz Date: Thu, 13 Jun 2024 16:46:35 +0800 Subject: [PATCH] =?UTF-8?q?6.13=20bug=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../serviceimpl/base/MesPartService.java | 1 + .../serviceimpl/base/MesWorkOrderService.java | 29 ++++++++++++++++++++-- 2 files changed, 28 insertions(+), 2 deletions(-) diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartService.java index ef0ba71..611f661 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesPartService.java @@ -23,6 +23,7 @@ public class MesPartService extends BaseMesService implements IMesPartS protected void setPackQueryBean(MesPart bean, DdlPackBean packBean) { DdlPreparedPack.getStringLikerPack(bean.getPartNo(), "partNo", packBean); DdlPreparedPack.getStringLikerPack(bean.getPartName(), "partName", packBean); + DdlPreparedPack.getStringLikerPack(bean.getPartTypeCode(), "partTypeCode", packBean); } diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java index 54778a6..f056a09 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderService.java @@ -10,6 +10,7 @@ import cn.estsh.i3plus.platform.common.convert.ConvertBean; import cn.estsh.i3plus.platform.common.exception.ImppExceptionEnum; import cn.estsh.i3plus.platform.common.tool.MathOperation; import cn.estsh.i3plus.platform.common.tool.TimeTool; +import cn.estsh.i3plus.platform.common.util.MesConstWords; import cn.estsh.i3plus.pojo.base.bean.DdlPackBean; import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil; import cn.estsh.i3plus.pojo.base.tool.DdlPreparedPack; @@ -293,7 +294,7 @@ public class MesWorkOrderService extends BaseMesService implements ValidatorBean.checkNotNull(item.getWorkOrderType(), "工单类型不能为空"); ValidatorBean.checkNotNull(item.getWorkCenterCode(), "产线不能为空"); - //ValidatorBean.checkNotNull(item.getShiftCode(), "班次不能为空"); + ValidatorBean.checkNotNull(item.getShiftCode(), "班次不能为空"); DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(item.getOrganizeCode()); DdlPreparedPack.getStringEqualPack(item.getWorkCenterCode(), "workCenterCode", ddlPackBean); @@ -537,7 +538,8 @@ public class MesWorkOrderService extends BaseMesService implements //生成条码 List resultList = getStringList(mesWorkOrder); - + //bom子零件是虚零件 继续拆他下面的零件 + recursionBomList(mesBoms); //保存数据 List mesProductOffLineList = new ArrayList<>(); for (String sn : resultList) { @@ -547,7 +549,30 @@ public class MesWorkOrderService extends BaseMesService implements } mesProductOffLineService.insertBatch(mesProductOffLineList); } + /** + * 递归查询bom + */ + private List recursionBomList(List bomList) { + if (!org.springframework.util.CollectionUtils.isEmpty(bomList)) { + for (MesBom bom : bomList) { +// if (bom.getItemPartNo().equals(bom.getPartNo())){ +// continue; +// } + if (!bom.getPartType().contains("V")){ + continue; + } + List resultList = mesBomRDao.findByProperty( + new String[]{MesConstWords.IS_VALID, MesConstWords.IS_DELETED, MesConstWords.ORGANIZE_CODE, "partNo"}, + new Object[]{CommonEnumUtil.IS_VAILD.VAILD.getValue(), CommonEnumUtil.IS_DEAL.NO.getValue(), + bom.getOrganizeCode(), bom.getItemPartNo()}); + recursionBomList(resultList); +// bom.setChildTreeList(resultList); + } + } + return bomList; + + } @Override public void doProductReportExt(MesWorkOrder mesWorkOrderNew) { MesWorkOrder mesWorkOrder = baseRDao.getById(mesWorkOrderNew.getId());