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 6e2d737..c93e76c 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 @@ -449,15 +449,27 @@ public class MesWorkOrderService implements IMesWorkOrderService { //新增初始化 todo // 根据 //根据物料获取已发布的工单 - List oldMesWorkOrderList = getMesWorkOrder(productionRecord, organizeCode); - if (CollectionUtils.isEmpty(oldMesWorkOrderList)) { - updateProductionRecord(organizeCode, userName, productionRecord.getProductSn()); - return; - } + try { + List oldMesWorkOrderList = getMesWorkOrder(productionRecord, organizeCode); + if (CollectionUtils.isEmpty(oldMesWorkOrderList)) { + updateProductionRecord(organizeCode, userName, productionRecord.getProductSn()); + return; + } - report(productionRecord, organizeCode, userName, oldMesWorkOrderList); + report(productionRecord, organizeCode, userName, oldMesWorkOrderList); + } + catch (Exception e) { + String msg = e.getMessage(); + if (e instanceof ImppBusiException) { + msg = ((ImppBusiException) e).getErrorMsg(); + } + e.printStackTrace(); + LOGGER.error("条码:{}报工失败", productionRecord.getProductSn(), e); + productionRecordService.updateProductionRecord(organizeCode, userName, productionRecord.getProductSn(), msg); + } } @Override + @Transactional(propagation= Propagation.REQUIRES_NEW,isolation= Isolation.READ_COMMITTED,readOnly = false,rollbackFor = Exception.class) public void doProductHasOrderReportByRecord(MesProductionRecord productionRecord, String organizeCode, String userName) { //新增初始化 todo // 根据