|
@@ -102,18 +102,10 @@ public class BionutritionDocHeaderServiceImpl extends CrudServiceImpl<Bionutriti
|
|
|
private List<BionutritionDocBaseDTO> buildBionutritionDocSameTypeList(List<BionutritionDocHeaderDTO> bionutritionDocHeaderDTOList){
|
|
|
List<BionutritionDocHeaderBaseDTO> bionutritionDocHeaderBaseDTOList = BionutritionDocUtil.buildBionutritionDocHeaderDTOList(bionutritionDocHeaderDTOList);
|
|
|
List<BionutritionDocDetailsDTO> bionutritionDocDetailsDTOList = bionutritionDocDetailsService.getBionutritionDocDetailsDTOList(
|
|
|
- bionutritionDocHeaderDTOList.stream().map(BionutritionDocHeaderDTO::getDocNo).collect(Collectors.toList()));
|
|
|
+ bionutritionDocHeaderDTOList.stream().map(BionutritionDocHeaderDTO::getDocNo).distinct().collect(Collectors.toList()));
|
|
|
List<BionutritionDocDetailsBaseDTO> bionutritionDocDetailsBaseDTOList = BionutritionDocUtil.buildBionutritionDocDetailsDTOList(
|
|
|
bionutritionDocHeaderDTOList.stream().findFirst().get().getDocType(), bionutritionDocDetailsDTOList);
|
|
|
- List<BionutritionDocBaseDTO> bionutritionDocBaseDTOList = new ArrayList<>();
|
|
|
- bionutritionDocHeaderBaseDTOList.forEach(item -> {
|
|
|
- BionutritionDocBaseDTO bionutritionDocBaseDTO = new BionutritionDocBaseDTO();
|
|
|
- bionutritionDocBaseDTO.setBionutritionDocHeaderBaseDTO(item);
|
|
|
- bionutritionDocBaseDTO.setBionutritionDocDetailsBaseDTOList(bionutritionDocDetailsBaseDTOList.stream()
|
|
|
- .filter(bionutritionDocDetailsBaseDTO -> StringUtils.equals(item.getId(), bionutritionDocDetailsBaseDTO.getDocHeaderId())).collect(Collectors.toList()));
|
|
|
- bionutritionDocBaseDTOList.add(bionutritionDocBaseDTO);
|
|
|
- });
|
|
|
- return bionutritionDocBaseDTOList;
|
|
|
+ return getBionutritionDocBaseDTOList(bionutritionDocDetailsBaseDTOList, bionutritionDocHeaderBaseDTOList);
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -124,13 +116,17 @@ public class BionutritionDocHeaderServiceImpl extends CrudServiceImpl<Bionutriti
|
|
|
private List<BionutritionDocBaseDTO> buildBionutritionDocDifferentTypeList(List<BionutritionDocHeaderDTO> bionutritionDocHeaderDTOList){
|
|
|
Map<String, List<BionutritionDocHeaderBaseDTO>> bionutritionDocHeaderMap = BionutritionDocUtil.buildBionutritionDocHeaderDTOByDocTypeMap(bionutritionDocHeaderDTOList);
|
|
|
List<BionutritionDocDetailsDTO> bionutritionDocDetailsDTOList = bionutritionDocDetailsService.getBionutritionDocDetailsDTOList(
|
|
|
- bionutritionDocHeaderDTOList.stream().map(BionutritionDocHeaderDTO::getDocNo).collect(Collectors.toList()));
|
|
|
+ bionutritionDocHeaderDTOList.stream().map(BionutritionDocHeaderDTO::getDocNo).distinct().collect(Collectors.toList()));
|
|
|
Map<String, List<BionutritionDocDetailsDTO>> bionutritionDocDetailsMap = bionutritionDocHeaderMap.entrySet().stream().collect(Collectors.toMap(Map.Entry::getKey,
|
|
|
item -> bionutritionDocDetailsDTOList.stream().filter(detail -> item.getValue().stream().anyMatch(header ->
|
|
|
StringUtils.equals(header.getId(), detail.getDocHeaderId()))).collect(Collectors.toList())));
|
|
|
List<BionutritionDocDetailsBaseDTO> bionutritionDocDetailsList = BionutritionDocUtil.buildBionutritionDocDetailsDTOList(bionutritionDocDetailsMap);
|
|
|
List<BionutritionDocHeaderBaseDTO> bionutritionDocHeaderList = new ArrayList<>();
|
|
|
bionutritionDocHeaderMap.forEach((key, value) -> bionutritionDocHeaderList.addAll(value));
|
|
|
+ return getBionutritionDocBaseDTOList(bionutritionDocDetailsList, bionutritionDocHeaderList);
|
|
|
+ }
|
|
|
+
|
|
|
+ private List<BionutritionDocBaseDTO> getBionutritionDocBaseDTOList(List<BionutritionDocDetailsBaseDTO> bionutritionDocDetailsList, List<BionutritionDocHeaderBaseDTO> bionutritionDocHeaderList) {
|
|
|
return bionutritionDocHeaderList.stream().map(item -> {
|
|
|
BionutritionDocBaseDTO bionutritionDocBaseDTO = new BionutritionDocBaseDTO();
|
|
|
bionutritionDocBaseDTO.setBionutritionDocHeaderBaseDTO(item);
|
|
@@ -140,8 +136,6 @@ public class BionutritionDocHeaderServiceImpl extends CrudServiceImpl<Bionutriti
|
|
|
}).collect(Collectors.toList());
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-
|
|
|
public BionutritionDocHeaderDTO getBionutritionDocHeaderDTOListByDocNo(String docNo) {
|
|
|
return getBionutritionDocHeaderDTOList(null, Lists.newArrayList(docNo), null)
|
|
|
.stream().findFirst().orElseGet(() -> new BionutritionDocHeaderDTO());
|