Index: ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java =================================================================== diff -u -r30258 -r30260 --- ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 30258) +++ ssts-sterile/src/main/java/com/forgon/disinfectsystem/sterilizationmanager/sterilizationrecord/service/SterilizationRecordManagerImpl.java (.../SterilizationRecordManagerImpl.java) (revision 30260) @@ -2096,6 +2096,26 @@ Boolean includeImplant = false; Integer frequency = sterilizationRecord.getFrequency(); + if(StringUtils.isNotBlank(sterilizationRecord.getMonitorPackageBarcode())){ + String countSql = "select count(id) from sterilizationRecord where monitorPackageBarcode = '" + sterilizationRecord.getMonitorPackageBarcode() + "' "; + if(DatabaseUtil.isPoIdValid(sterilizationRecord.getId())){ + countSql += "and id <> " + sterilizationRecord.getId(); + } + if(objectDao.countBySql(countSql)>0){ + throw new UnScanSterilizationMonitoringPackageException("生物监测包条码【" + sterilizationRecord.getMonitorPackageBarcode() + "】已经被使用!"); + } + } + + if(StringUtils.isNotBlank(sterilizationRecord.getChemistryPackageBarcode())){ + String countSql = "select count(id) from sterilizationRecord where chemistryPackageBarcode = '" + sterilizationRecord.getChemistryPackageBarcode() + "' "; + if(DatabaseUtil.isPoIdValid(sterilizationRecord.getId())){ + countSql += "and id <> " + sterilizationRecord.getId(); + } + if(objectDao.countBySql(countSql)>0){ + throw new UnScanSterilizationMonitoringPackageException("化学监测包条码【" + sterilizationRecord.getChemistryPackageBarcode() + "】已经被使用!"); + } + } + if (StringUtils.isNotBlank(monitorTousseDisplay)) { Collection allTousseInstances = CollectionUtils.emptyCollection();