Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/InvoicePlanOptimizeManagerImpl.java =================================================================== diff -u -r30805 -r31072 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/InvoicePlanOptimizeManagerImpl.java (.../InvoicePlanOptimizeManagerImpl.java) (revision 30805) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/recyclingapplication/service/InvoicePlanOptimizeManagerImpl.java (.../InvoicePlanOptimizeManagerImpl.java) (revision 31072) @@ -1514,10 +1514,14 @@ for (Map map : list) { String tousseName = (String)map.get("tousseName"); ApplicationGoodsVo vo = tousseNameToVoMap.get(tousseName); + //判断该vo对象是否已经存在于map中,如果不存在则将vo添加至集合中。防止集中存在重复的vo + boolean voExistsInMap = false; //外来器械 if (vo == null) { vo = new ApplicationGoodsVo(); tousseNameToVoMap.put(tousseName, vo); + }else{ + voExistsInMap = true; } String tousseType = (String)map.get("tousseType"); vo.setName(tousseName); @@ -1559,7 +1563,9 @@ out_beginTime)); } vo.setInvoicePlanType(InvoicePlan.TYPE_FOREIGNTOUSSEAPPLIACTION); - result.add(vo); + if(!voExistsInMap){ + result.add(vo); + } } } return result;