Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r38624 -r38625 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 38624) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 38625) @@ -11652,7 +11652,7 @@ */ private void deletePackingTask(PackingTask packingTask, Integer amount, boolean notLossReport, String deleteCause, Long tousseID){ Integer unPackAmount = amount == null?packingTask.getUnPackAmount():packingTask.getUnPackAmount() - amount; - TousseDefinition td = tousseDefinitionManager.get(tousseID); + TousseDefinition td = packingTask.getTousseDefinition(); if(!notLossReport){//丢失报损行... String whereSql = String.format(" where po.packingTaskId=%s and tousseDefinitionId=%s ", packingTask.getId(),tousseID); @SuppressWarnings("unchecked") @@ -11704,6 +11704,12 @@ return; } Long tdId = null; + if(td == null && packingTask.getTousseDefinition() != null){ + td = packingTask.getTousseDefinition(); + } + if(td == null){ + throw new SystemException("装配任务的包定义不存在"); + } if(StringTools.equals(td.getTousseType(),TousseDefinition.PACKAGE_TYPE_SPLIT)){ tdId = td.getParentID(); }else{