Index: ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/departmentapplicationtemplate/service/DepartmentAppTemplateManagerImpl.java =================================================================== diff -u -r28946 -r28958 --- ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/departmentapplicationtemplate/service/DepartmentAppTemplateManagerImpl.java (.../DepartmentAppTemplateManagerImpl.java) (revision 28946) +++ ssts-recyclingapplication/src/main/java/com/forgon/disinfectsystem/departmentapplicationtemplate/service/DepartmentAppTemplateManagerImpl.java (.../DepartmentAppTemplateManagerImpl.java) (revision 28958) @@ -180,8 +180,30 @@ if (templates != null){ for (DepartmentAppTemplate template : templates) { List toAddItems = template.getTousseDefinitionTemplateItems(); - sortTousseTemplateItems(toAddItems); - items.addAll(toAddItems); + //GDSZYY-15 科室申领模板增加物品默认申请数量的功能(如果有某个科室有多个使用模板,模板上有相同的物品,但默认数量不同,则取大的数量作为申请时的默认填写数量。) + if(CollectionUtils.isNotEmpty(toAddItems)){ + sortTousseTemplateItems(toAddItems); + if(CollectionUtils.isNotEmpty(items)){ + for(TousseDefinitionTemplateItem toAddItem : toAddItems){ + boolean existsItem = false; + for(TousseDefinitionTemplateItem item : items){ + if(item.getTousseDefinition().getId().equals(toAddItem.getTousseDefinition().getId())){ + existsItem = true; + if(toAddItem.getAmount() != null){ + if(item.getAmount() == null || toAddItem.getAmount() > item.getAmount()){ + item.setAmount(toAddItem.getAmount()); + } + } + } + } + if(!existsItem){ + items.add(toAddItem); + } + } + }else{ + items.addAll(toAddItems); + } + } } } return items; @@ -220,7 +242,29 @@ if (templates != null){ for (DepartmentAppTemplate template : templates) { List toAddItems = template.getDiposableGoodsTemplateItems(); - items.addAll(toAddItems); + //GDSZYY-15 科室申领模板增加物品默认申请数量的功能(如果有某个科室有多个使用模板,模板上有相同的物品,但默认数量不同,则取大的数量作为申请时的默认填写数量。) + if(CollectionUtils.isNotEmpty(toAddItems)){ + if(CollectionUtils.isNotEmpty(items)){ + for(DiposableGoodsTemplateItem toAddItem : toAddItems){ + boolean existsItem = false; + for(DiposableGoodsTemplateItem item : items){ + if(item.getApplicationDiposableGoods().getId().equals(toAddItem.getApplicationDiposableGoods().getId())){ + existsItem = true; + if(toAddItem.getAmount() != null){ + if(item.getAmount() == null || toAddItem.getAmount() > item.getAmount()){ + item.setAmount(toAddItem.getAmount()); + } + } + } + } + if(!existsItem){ + items.add(toAddItem); + } + } + }else{ + items.addAll(toAddItems); + } + } } } return items;