diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java index 2c3ca4e..8f44d6c 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/base/MesReworkTaskServiceImpl.java @@ -136,6 +136,8 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { @Autowired private IMesWorkOrderExtService workOrderExtService; + @Autowired + private MesWorkOrderRepository workOrderRepository; @Override public ListPager queryReworkTask(MesReworkTask mesReworkTask, Pager pager) { String organizeCode = !StringUtils.isEmpty(mesReworkTask.getOrganizeCode())?mesReworkTask.getOrganizeCode():AuthUtil.getOrganizeCode(); @@ -300,6 +302,7 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { mesReworkTask.setReworkedQty(mesReworkTask.getQty()); } else if (MesExtEnumUtil.NC_TYPE.SCRAP.getValue() == requestModel.getType()) { //更新条码状态为报废 + requestModel.setSn(mesReworkTask.getSn()); updateMesProduceSn(requestModel); //更新返工数量 mesReworkTask.setScrapQty(mesReworkTask.getQty()); @@ -363,7 +366,7 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { new Object[]{userName, TimeTool.getNowTime(true),sn.getProductSn(),sn.getDescription()},packBean); //更新返工记录 packBean = DdlPackBean.getDdlPackBean(organizeCode); - DdlPreparedPack.getStringEqualPack(requestModel.getSn(),"sn",packBean); + DdlPreparedPack.getStringEqualPack(sn.getProductSn(),"sn",packBean); DdlPreparedPack.getStringEqualPack(sn.getPartNo(),"partNo",packBean); mesReworkTaskRepository.updateByProperties(new String[]{"modifyUser", "modifyDatetime","sn","description"}, new Object[]{userName, TimeTool.getNowTime(true),sn.getProductSn(),sn.getDescription()},packBean); @@ -772,7 +775,10 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { MesProduceSn produceSnDb = mesProduceSnRepository.getByProperty(oldSnPackBean); if (produceSnDb == null) { - MesPcnException.throwFlowException(String.format("条码【%s】信息不存在", productSn)); + produceSnDb = (MesProduceSn) workOrderExtService.getWorkOrderSort(organizeCode, productSn, false); + if (produceSnDb == null) { + MesPcnException.throwFlowException(String.format("条码【%s】信息不存在", productSn)); + } } return produceSnDb; } @@ -863,8 +869,25 @@ public class MesReworkTaskServiceImpl implements IMesReworkTaskService { produceSn.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SCRAP.getValue()); ConvertBean.serviceModelUpdate(produceSn,requestModel.getUserName()); mesProduceSnRepository.update(produceSn); + //排序产线 更新工单的 qcStatus + MesWorkCenter centerDb = prodOrgExtService.getWorkCenterDb(requestModel.getOrganizeCode(), produceSn.getWorkCenterCode()); + if (!StringUtil.isEmpty(centerDb)){ + if(centerDb.getCenterType() == MesExtEnumUtil.WORK_CENTER_TYPE.SORT.getValue()){ + MesWorkOrder workOrder = getWorkOrder(requestModel.getOrganizeCode(),produceSn.getWorkOrderNo()); + if (!StringUtil.isEmpty(workOrder)){ + workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SCRAP.getValue()); + ConvertBean.serviceModelUpdate(workOrder, requestModel.getUserName()); + workOrderRepository.update(workOrder); + } + } + } + } + public MesWorkOrder getWorkOrder(String organizeCode, String workOrderNo) { + if (StringUtils.isEmpty(organizeCode) || StringUtils.isEmpty(workOrderNo)) return null; + return workOrderRepository.getByProperty( + new String[]{MesPcnExtConstWords.ORGANIZE_CODE, MesPcnExtConstWords.IS_DELETED, MesPcnExtConstWords.IS_VALID, MesPcnExtConstWords.WORK_ORDER_NO}, + new Object[]{organizeCode, CommonEnumUtil.TRUE_OR_FALSE.FALSE.getValue(), CommonEnumUtil.IS_VAILD.VAILD.getValue(), workOrderNo}); } - private MesMove doCreateMove(String oldSn, String sn, String organizeCode, String userName) { MesMove move = new MesMove(); move.setOrganizeCode(organizeCode); diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java index 1df69f9..b182609 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesInputDefectRecordService.java @@ -266,7 +266,7 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService MesWorkOrder workOrder = getWorkOrder(org,produceSn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()); - ConvertBean.serviceModelUpdate(produceSn, AuthUtil.getSessionUser().getUserName()); + ConvertBean.serviceModelUpdate(workOrder, AuthUtil.getSessionUser().getUserName()); workOrderRepository.update(workOrder); } } @@ -322,7 +322,7 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService MesWorkOrder workOrder = getWorkOrder(org,produceSn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()); - ConvertBean.serviceModelUpdate(produceSn, AuthUtil.getSessionUser().getUserName()); + ConvertBean.serviceModelUpdate(workOrder, AuthUtil.getSessionUser().getUserName()); workOrderRepository.update(workOrder); } } @@ -391,7 +391,7 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService MesWorkOrder workOrder = getWorkOrder(org,produceSn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SUSPICIOUS.getValue()); - ConvertBean.serviceModelUpdate(produceSn, AuthUtil.getSessionUser().getUserName()); + ConvertBean.serviceModelUpdate(workOrder, AuthUtil.getSessionUser().getUserName()); workOrderRepository.update(workOrder); } } @@ -449,7 +449,7 @@ public class MesInputDefectRecordService implements IMesInputDefectRecordService MesWorkOrder workOrder = getWorkOrder(org,produceSn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SUSPICIOUS.getValue()); - ConvertBean.serviceModelUpdate(produceSn, AuthUtil.getSessionUser().getUserName()); + ConvertBean.serviceModelUpdate(workOrder, AuthUtil.getSessionUser().getUserName()); workOrderRepository.update(workOrder); } } diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java index 2edbb69..98c2e70 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesNcProcessingService.java @@ -373,7 +373,7 @@ public class MesNcProcessingService implements IMesNcProcessingService { MesWorkOrder workOrder = getWorkOrder(org,sn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SUSPICIOUS_TO_QUALIFIED.getValue()); - ConvertBean.serviceModelUpdate(sn, model.getUserName()); + ConvertBean.serviceModelUpdate(workOrder, model.getUserName()); workOrderRepository.update(workOrder); } } @@ -459,7 +459,7 @@ public class MesNcProcessingService implements IMesNcProcessingService { MesWorkOrder workOrder = getWorkOrder(org,sn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.SCRAP.getValue()); - ConvertBean.serviceModelUpdate(sn, model.getUserName()); + ConvertBean.serviceModelUpdate(workOrder, model.getUserName()); workOrderRepository.update(workOrder); } } @@ -500,7 +500,7 @@ public class MesNcProcessingService implements IMesNcProcessingService { MesWorkOrder workOrder = getWorkOrder(org,sn.getWorkOrderNo()); if (!StringUtil.isEmpty(workOrder)){ workOrder.setQcStatus(MesExtEnumUtil.PRODUCE_QC_STATUS.QUALIFIED.getValue()); - ConvertBean.serviceModelUpdate(sn, model.getUserName()); + ConvertBean.serviceModelUpdate(workOrder, model.getUserName()); workOrderRepository.update(workOrder); } }