diff --git a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderCutService.java b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderCutService.java index b5b5029..633dea6 100644 --- a/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderCutService.java +++ b/modules/i3plus-ext-mes-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/apiservice/serviceimpl/base/MesWorkOrderCutService.java @@ -89,6 +89,11 @@ public class MesWorkOrderCutService extends BaseMesService impl Map> workOrderListMapByPartNo = workOrderList.stream().collect(Collectors.groupingBy(MesWorkOrder::getPartNo)); + MesCutScheme cutScheme = getCutScheme(cutCode, organizeCode); + + if (cutScheme == null) + MesException.throwMesBusiException("裁片方案【%s】无效", cutCode); + List cutSchemeMaterialList = getCutSchemeMaterialList(cutCode, organizeCode); if (CollectionUtils.isEmpty(cutSchemeMaterialList)) MesException.throwMesBusiException("裁片方案【%s】缺少原材料配置", cutCode); @@ -116,9 +121,12 @@ public class MesWorkOrderCutService extends BaseMesService impl MesWorkOrder workOrder = workOrders.get(0); - if (cutSchemeFg.getQty().compareTo(workOrder.getUnCompleteQty()) > 0) { - MesException.throwMesBusiException("零件号【%s】工单未完成数量【%s】不满足产成总数【%s】", cutSchemeFg.getPartNo(), workOrder.getUnCompleteQty(), cutSchemeFg.getQty()); - } + if (!workOrder.getWorkCenterCode().equals(cutScheme.getWorkCenterCode())) + MesException.throwMesBusiException("工单【%s】关联产线【%】与裁片方案【%】关联产线不一致!", workOrder.getWorkCenterCode(), cutScheme.getWorkCenterCode()); + + if (cutSchemeFg.getQty().compareTo(workOrder.getUnCompleteQty()) > 0) + MesException.throwMesBusiException("零件号【%s】工单未完成数量【%s】不满足产成总数【%s】", + cutSchemeFg.getPartNo(), workOrder.getUnCompleteQty(), cutSchemeFg.getQty()); Double unCompleteQty = workOrder.getUnCompleteQty(); @@ -136,8 +144,6 @@ public class MesWorkOrderCutService extends BaseMesService impl } - MesCutScheme cutScheme = getCutScheme(cutCode, organizeCode); - MesWorkOrderCut workOrderCut = new MesWorkOrderCut(); ConvertBean.serviceModelInitialize(workOrderCut, userName); workOrderCut.setCutCode(cutScheme.getCutCode());