From 1e0e4a94d17f6d763a7673e4d9d2749054c5df72 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=AE=E7=AC=91=E7=9D=80=E9=9D=A2=E5=AF=B9=E6=98=8E?= =?UTF-8?q?=E5=A4=A9?= <752558143@qq.com> Date: Sun, 30 Jun 2024 21:37:20 +0800 Subject: [PATCH] =?UTF-8?q?=E6=8A=A5=E5=B7=A5=E9=97=AE=E9=A2=98=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apiservice/schedulejob/MesReportNoSortJob.java | 4 +-- .../serviceimpl/busi/MesWorkOrderService.java | 37 ++++++---------------- 2 files changed, 12 insertions(+), 29 deletions(-) diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/schedulejob/MesReportNoSortJob.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/schedulejob/MesReportNoSortJob.java index 700069f..5691a7a 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/schedulejob/MesReportNoSortJob.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/schedulejob/MesReportNoSortJob.java @@ -85,7 +85,7 @@ public class MesReportNoSortJob extends BaseMesScheduleJob { } catch (ImppBusiException e) { LOGGER.error("条码:{}报工失败", unReportMesProduceSn.get(0).getProductSn(), e.getErrorDetail()); - updateProductionRecord(organizeCode, userName, unReportMesProduceSn.get(0).getProductSn(), e.getErrorDetail()); + //updateProductionRecord(organizeCode, userName, unReportMesProduceSn.get(0).getProductSn(), e.getErrorDetail()); } } @@ -101,7 +101,7 @@ public class MesReportNoSortJob extends BaseMesScheduleJob { } catch (ImppBusiException e) { LOGGER.error("条码:{}报工失败", unReportMesProduceSn.get(0).getProductSn(), e.getErrorDetail()); - updateProductionRecord(organizeCode, userName, unReportMesProduceSn.get(0).getProductSn(), e.getErrorDetail()); + //updateProductionRecord(organizeCode, userName, unReportMesProduceSn.get(0).getProductSn(), e.getErrorDetail()); } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java index 2a8a86b..9323e37 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesWorkOrderService.java @@ -274,32 +274,10 @@ public class MesWorkOrderService implements IMesWorkOrderService { MesProductVersion mesProductVersion = getMesProductVersion(mesWorkOrderDb); //物料+生产版本获取bom信息 List mesBoms = findBomList(mesPart.getOrganizeCode(), mesPart, mesProductVersion.getAlternativePartList()); - //报工类型 - if (MesExtEnumUtil.REPORT_TYPE.REPORT.getValue() == mesWorkOrderDb.getReportType()) { - mesWorkOrderDb.setReportedQty(MathOperation.add(mesWorkOrderDb.getNum(), mesWorkOrderDb.getReportedQty())); - //更新工单状态 - double unCompleteQty = MathOperation.sub(mesWorkOrderDb.getQty(), mesWorkOrderDb.getReportedQty()); - mesWorkOrderDb.setUnCompleteQty(unCompleteQty > 0 ? unCompleteQty : 0); - if (mesWorkOrderDb.getReportedQty() > mesWorkOrderDb.getQty()) { - MesPcnException.throwMesBusiException("工单报工数量【%s】大于工单数量【%s】,不允许报工", - mesWorkOrderDb.getReportedQty(), mesWorkOrderDb.getQty()); - } else if (Objects.equals(mesWorkOrderDb.getReportedQty(), mesWorkOrderDb.getQty())) { - mesWorkOrderDb.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.COMPLETE.getValue()); - } else { - mesWorkOrderDb.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.PROCESS.getValue()); - } - } else { - //报工调整数量加- - mesWorkOrderDb.setAdjustQty((MathOperation.add(mesWorkOrderDb.getNum(), mesWorkOrderDb.getAdjustQty()))); - //冲销数量大于工单完成数量报错 - if (mesWorkOrderDb.getAdjustQty() > mesWorkOrderDb.getReportedQty()) { - MesPcnException.throwMesBusiException("冲销数量【%s】大于工单完成数量【%s】,不允许冲销", - mesWorkOrderDb.getAdjustQty(), mesWorkOrderDb.getReportedQty()); - } - } + LOGGER.info("产线:{} 零件:{}更新工单", mesWorkOrderDb.getWorkCenterCode(), mesWorkOrderDb.getPartNo()); //更新工单 - updateMesWorkOrder(mesWorkOrderDb, userName ); + // updateMesWorkOrder(mesWorkOrderDb, userName ); //生成条码 todo 有条码 不生成 @@ -650,8 +628,8 @@ public class MesWorkOrderService implements IMesWorkOrderService { DdlPackBean ddlPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getStringEqualPack(productionRecord.getPartNo(), "partNo", ddlPackBean); DdlPreparedPack.getStringEqualPack(productionRecord.getWorkCenterCode(), "workCenterCode", ddlPackBean); - if (!StringUtils.isEmpty(workOrderNo)) { - DdlPreparedPack.getStringEqualPack(workOrderNo, "workOrderNo", ddlPackBean); + if (!StringUtils.isEmpty(productionRecord.getWorkOrderNo())) { + DdlPreparedPack.getStringEqualPack(productionRecord.getWorkOrderNo(), "workOrderNo", ddlPackBean); } DdlPreparedPack.getInPackList(list, "workOrderStatus", ddlPackBean); DdlPreparedPack.getOrderByPack(new Object[]{CommonEnumUtil.ASC_OR_DESC.ASC.getValue()}, new String[]{"createDatetime"}, ddlPackBean); @@ -762,6 +740,7 @@ public class MesWorkOrderService implements IMesWorkOrderService { DdlPackBean snPackBean = DdlPackBean.getDdlPackBean(organizeCode); DdlPreparedPack.getInPackList(mesProductionRecordList.stream().map(MesProductionRecord::getProductSn).collect(Collectors.toList()), "productSn",snPackBean); + DdlPreparedPack.getIsNotNull("workCenterCode", snPackBean); return mesProduceSnRao.findByHqlWhere(snPackBean); } @@ -879,6 +858,10 @@ public class MesWorkOrderService implements IMesWorkOrderService { item.setProduceTime(TimeTool.getToday()); item.setUnCompleteQty(0d); item.setQty(value.stream().mapToDouble(MesProduceSn::getQty).sum()); + item.setReportedQty(item.getQty()); + item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.COMPLETE.getValue()); + + //校验标识 //若工单类型为排序 List saveMesWorkOrderToWms = new ArrayList<>(); @@ -894,7 +877,7 @@ public class MesWorkOrderService implements IMesWorkOrderService { item.setProductVersion(mesProductVersion.getProductVersion()); //获取bom信息 List bomList = findMesBomByPartNoAndBomVersion(item.getPartNo(), item.getOrganizeCode(), mesProductVersion.getAlternativePartList()); - item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue()); + //item.setWorkOrderStatus(MesExtEnumUtil.ORDER_STATUS.RELEASE.getValue()); //发送工单信息给WMS saveMesWorkOrderToWms.addAll(saveMesWorkOrderToWms(item, bomList)); }