diff --git a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesRawPartChargingServiceImpl.java b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesRawPartChargingServiceImpl.java index fa382d5..b9c038e 100644 --- a/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesRawPartChargingServiceImpl.java +++ b/modules/i3plus-ext-mes-pcn-apiservice/src/main/java/cn/estsh/i3plus/ext/mes/pcn/apiservice/serviceimpl/busi/MesRawPartChargingServiceImpl.java @@ -120,7 +120,7 @@ public class MesRawPartChargingServiceImpl implements IMesRawPartChargingService //保存生产控制加料 MesRawPartCharging charging = insertRawPartCharging(mesRawPartChargingModel); //保存日志 - saveLog(mesRawPartChargingModel, charging.getId(), MesExtEnumUtil.CHARGING_LOG_STATUS.FEEDING); + saveLog(mesRawPartChargingModel, charging, MesExtEnumUtil.CHARGING_LOG_STATUS.FEEDING); } @@ -132,11 +132,11 @@ public class MesRawPartChargingServiceImpl implements IMesRawPartChargingService if(CollectionUtils.isEmpty(mesRawPartChargingList)){ MesPcnException.throwMesBusiException("料筒条码【%s】未绑定,无需初始化", mesRawPartChargingModel.getPackageSn()); } - //删除绑定信息 - mesRawPartChargingRepository.deleteWeaklyByIds((Long[]) mesRawPartChargingList.stream().map(MesRawPartCharging::getId).toArray(), mesRawPartChargingModel.getUserName()); - //保存日志 for (MesRawPartCharging mesRawPartCharging : mesRawPartChargingList) { - saveLog(mesRawPartChargingModel, mesRawPartCharging.getId(), MesExtEnumUtil.CHARGING_LOG_STATUS.CLEAR); + //删除绑定信息 + mesRawPartChargingRepository.deleteWeaklyById(mesRawPartCharging.getId(), mesRawPartChargingModel.getUserName()); + //保存日志 + saveLog(mesRawPartChargingModel, mesRawPartCharging, MesExtEnumUtil.CHARGING_LOG_STATUS.CLEAR); } } @@ -213,14 +213,22 @@ public class MesRawPartChargingServiceImpl implements IMesRawPartChargingService if (StringUtils.isEmpty(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule())) { MesPcnException.throwMesBusiException("非自制件,条码规则未维护", mesRawPartChargingModel.getMesRawPackagePart().getPartNo()); } - if (!mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().contains("*") && !mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().equals(mesRawPartChargingModel.getSn())) { - MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); - } else if (mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().startsWith("*") && mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().endsWith("*") && !mesRawPartChargingModel.getSn().contains(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().replace("*", ""))) { - MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); - } else if (mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().startsWith("*") && !mesRawPartChargingModel.getSn().endsWith(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().replace("*", ""))) { - MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); - } else if (mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().endsWith("*") && !mesRawPartChargingModel.getSn().startsWith(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().replace("*", ""))) { - MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); + if (!mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().contains("*")) { + if(!mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().equals(mesRawPartChargingModel.getSn())){ + MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); + } + } else if (mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().startsWith("*") && mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().endsWith("*")) { + if(!mesRawPartChargingModel.getSn().contains(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().replace("*", ""))){ + MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); + } + } else if (mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().startsWith("*")) { + if(!mesRawPartChargingModel.getSn().endsWith(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().replace("*", ""))){ + MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); + } + } else if (mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().endsWith("*")) { + if(!mesRawPartChargingModel.getSn().startsWith(mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule().replace("*", ""))){ + MesPcnException.throwMesBusiException("原料条码【%s】校验条码规则【%s】失败", mesRawPartChargingModel.getSn(), mesRawPartChargingModel.getMesRawPackagePart().getBarcodeRule()); + } } } @@ -247,13 +255,14 @@ public class MesRawPartChargingServiceImpl implements IMesRawPartChargingService return mesRawPartChargingRepository.insert(mesRawPartCharging); } - private void saveLog(MesRawPartChargingModel mesRawPartChargingModel, Long id, MesExtEnumUtil.CHARGING_LOG_STATUS status) { + private void saveLog(MesRawPartChargingModel mesRawPartChargingModel, MesRawPartCharging charging, MesExtEnumUtil.CHARGING_LOG_STATUS status) { MesRawPartChargingLog mesRawPartChargingLog = new MesRawPartChargingLog(); - BeanUtils.copyProperties(mesRawPartChargingModel, mesRawPartChargingLog); - mesRawPartChargingLog.setCharingId(id); + BeanUtils.copyProperties(charging, mesRawPartChargingLog,"id"); + mesRawPartChargingLog.setCharingId(charging.getId()); mesRawPartChargingLog.setPackageSn(mesRawPartChargingModel.getPackageSn()); mesRawPartChargingLog.setPackageName(mesRawPartChargingModel.getMesRawPackageModel().getMesRawPackage().getName()); mesRawPartChargingLog.setStatus(status.getValue()); + ConvertBean.serviceModelInitialize(mesRawPartChargingLog,mesRawPartChargingModel.getUserName()); mesRawPartChargingLogRepository.insert(mesRawPartChargingLog); }