Index: ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java =================================================================== diff -u -r34039 -r34043 --- ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java (.../WashAndDisinfectRecordManagerImpl.java) (revision 34039) +++ ssts-wash/src/main/java/com/forgon/disinfectsystem/washanddisinfectmanager/washanddisinfectrecord/service/WashAndDisinfectRecordManagerImpl.java (.../WashAndDisinfectRecordManagerImpl.java) (revision 34043) @@ -343,6 +343,13 @@ } } + //清洗消毒模块,登记清洗记录时,清洗篮筐的责任人是否允许为空。true或者没有配置 : 允许为空;false : 不允许为空DGZYY-198 + boolean washAndDisinfectRecordPersonInChargeAllowBlank = + ConfigUtils.getSystemSetConfigByNameBool("washAndDisinfectRecordPersonInChargeAllowBlank", true); + if(!washAndDisinfectRecordPersonInChargeAllowBlank && isAnyBasketPersonInChargeBlank(classifyBasketInfoMap)){ + throw new SystemException("清洗篮筐的责任人不能为空!"); + } + isWashOrderRight(washRecord.getId(),washRecord.getDisinfectIdentification(), classifyBasketInfoMap.keySet()); setClassifyBasketInfo(washRecord, classifyBasketInfoMap,rinser, isNewRecord,toDeleteBasketMap); @@ -392,6 +399,24 @@ } /** + * 判断篮筐是否存在责任人为空的情况 + * @param classifyBasketInfoMap + * @return + */ + private boolean isAnyBasketPersonInChargeBlank(Map classifyBasketInfoMap) { + if(MapUtils.isEmpty(classifyBasketInfoMap)){ + return false; + } + for (ClassifyBasket cb : classifyBasketInfoMap.values()) { + if(StringUtils.isBlank(cb.getPersonInCharge()) || StringUtils.isBlank(cb.getPersonInChargeCode())){ + return true; + } + } + return false; + } + + + /** * 第一条记录的信息和修改或干预前的记录一样,但消耗的参数值为负值;用于返还修改或干预前的耗材消耗 * @param washRecord */