Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingerror/RecyclingError.java =================================================================== diff -u -r13461 -r13462 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingerror/RecyclingError.java (.../RecyclingError.java) (revision 13461) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingerror/RecyclingError.java (.../RecyclingError.java) (revision 13462) @@ -267,7 +267,7 @@ } @Transient - public Boolean getIsUnitPackingTask() { + public Boolean getIsUnionPackingTask() { if(packingTask_ID == null){ return false; } Index: ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingdamagerecord/RecyclingDamageItem.java =================================================================== diff -u -r13461 -r13462 --- ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingdamagerecord/RecyclingDamageItem.java (.../RecyclingDamageItem.java) (revision 13461) +++ ssts-basedata/src/main/java/com/forgon/disinfectsystem/entity/recyclingdamagerecord/RecyclingDamageItem.java (.../RecyclingDamageItem.java) (revision 13462) @@ -193,7 +193,7 @@ } @Transient - public Boolean getIsUnitPackingTask() { + public Boolean getIsUnionPackingTask() { if(packingTask_ID == null){ return false; }else{ Index: ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java =================================================================== diff -u -r13461 -r13462 --- ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 13461) +++ ssts-recyclingrecord/src/main/java/com/forgon/disinfectsystem/recyclingrecord/service/RecyclingRecordManagerImpl.java (.../RecyclingRecordManagerImpl.java) (revision 13462) @@ -939,49 +939,23 @@ if(TousseDefinition.STR_YES.equals(td.getIsPacking())){ if(item.getRecyclingErrors().size() > 0){ for (RecyclingError error : item.getRecyclingErrors()) { - if (!error.getIsUnitPackingTask()) { + if (!error.getIsUnionPackingTask()) { if (historyPackingTaskId == null) { - List taskList = packingManager - .getPackingTask(records.getId(), - item.getTousseDefinitionId(), - PackingTask.TASK_RECYCLINGRECORD); - if (taskList != null && taskList.size() > 0) { - PackingTask packingTask = taskList.get(0); - historyPackingTaskId = packingTask.getId(); - if(!confirmation){ - packingTask.setStatus(PackingTask.STATUS_AWAIT_VERIFYING); - }else{ - packingTask.setStatus(PackingTask.STATUS_AWAIT_PACKING); - } - } else { - throw new RuntimeException(item.getTousseName() - + ",装配任务已不存在!"); - } + historyPackingTaskId = getUnionPackingTaskId( + records, confirmation, item, + historyPackingTaskId); } error.setPackingTask_ID(historyPackingTaskId); } } } if(item.getRecyclingDamages().size() > 0){ for (RecyclingDamageItem damage : item.getRecyclingDamages()) { - if(!damage.getIsUnitPackingTask()){ + if(!damage.getIsUnionPackingTask()){ if(historyPackingTaskId == null){ - List taskList = packingManager - .getPackingTask(records.getId(), - item.getTousseDefinitionId(), - PackingTask.TASK_RECYCLINGRECORD); - if (taskList != null && taskList.size() > 0) { - PackingTask packingTask = taskList.get(0); - historyPackingTaskId = packingTask.getId(); - if(!confirmation){ - packingTask.setStatus(PackingTask.STATUS_AWAIT_VERIFYING); - }else{ - packingTask.setStatus(PackingTask.STATUS_AWAIT_PACKING); - } - } else { - throw new RuntimeException(item.getTousseName() - + ",装配任务已不存在!"); - } + historyPackingTaskId = getUnionPackingTaskId( + records, confirmation, item, + historyPackingTaskId); } damage.setPackingTask_ID(historyPackingTaskId); } @@ -991,6 +965,27 @@ } } + private Long getUnionPackingTaskId(RecyclingRecord records, + boolean confirmation, TousseItem item, Long historyPackingTaskId) { + List taskList = packingManager + .getPackingTask(records.getId(), + item.getTousseDefinitionId(), + PackingTask.TASK_RECYCLINGRECORD); + if (taskList != null && taskList.size() > 0) { + PackingTask packingTask = taskList.get(0); + historyPackingTaskId = packingTask.getId(); + if(!confirmation){ + packingTask.setStatus(PackingTask.STATUS_AWAIT_VERIFYING); + }else{ + packingTask.setStatus(PackingTask.STATUS_AWAIT_PACKING); + } + } else { + throw new RuntimeException(item.getTousseName() + + ",装配任务已不存在!"); + } + return historyPackingTaskId; + } + public List getTousseItems(RecyclingRecord recyclingRecord, String tousseItemsString) { List items = new ArrayList();