Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r27465 -r27473 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 27465) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 27473) @@ -827,17 +827,16 @@ Map amountMap = tousseNameToAmountMap.get(tousseName); if(MapUtils.isNotEmpty(amountMap) && amountMap.get(TousseInstance.STATUS_CARDINALNUM) != null){ Integer cardinalNum = amountMap.get(TousseInstance.STATUS_CARDINALNUM); - if(cardinalNum == null || cardinalNum == 0){ - continue; + if(cardinalNum != null && cardinalNum != 0){ + Integer existsAmount = amountMap.get(TousseInstance.STATUS_USEDCARDINALNUM); + if(existsAmount >= cardinalNum){ + throw new RuntimeException(tousseName + "基数数量已达上限,可回收数量为0"); + } + Integer surplusBaseAmount = cardinalNum - existsAmount; + if(amount > surplusBaseAmount){ + throw new RuntimeException(tousseName + "基数数量已达上限,可回收数量为" + surplusBaseAmount); + }; } - Integer existsAmount = amountMap.get(TousseInstance.STATUS_USEDCARDINALNUM); - if(existsAmount >= cardinalNum){ - throw new RuntimeException(tousseName + "基数数量已达上限,可回收数量为0"); - } - Integer surplusBaseAmount = cardinalNum - existsAmount; - if(amount > surplusBaseAmount){ - throw new RuntimeException(tousseName + "基数数量已达上限,可回收数量为" + surplusBaseAmount); - } } } }