diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectrecord/service/impl/ProjectRecordServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectrecord/service/impl/ProjectRecordServiceImpl.java index 4e5f199..d06b9cd 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectrecord/service/impl/ProjectRecordServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectrecord/service/impl/ProjectRecordServiceImpl.java @@ -56,6 +56,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import javax.annotation.Resource; import java.math.BigDecimal; @@ -1023,9 +1024,22 @@ public class ProjectRecordServiceImpl extends BaseServiceImpl projectIds = recordVOList.stream().map(ProjectRecordVO::getId).collect(Collectors.toList()); List sectionList = projectSectionService.getListAssembleProjectPage(projectIds); - List sectionIds = sectionList.stream().map(ProjectSection::getId).collect(Collectors.toList()); + + //分组排序 获取第一条 + Map> conversionMap = sectionList.stream().collect(Collectors.groupingBy(ProjectSection::getProjectId)); + List sectionVOList = new ArrayList<>(); + for (String key: conversionMap.keySet()) { + List tempList = conversionMap.get(key); + if(!CollectionUtils.isEmpty(tempList)){ + tempList = tempList.stream().sorted(Comparator.comparing(ProjectSection::getBidSectCode)).collect(Collectors.toList()); + ProjectSectionVO vo = BeanUtil.toBean(tempList.get(0),ProjectSectionVO.class); + vo.setSectionCount(tempList.size()); + sectionVOList.add(vo); + } + } + + List sectionIds = sectionVOList.stream().map(ProjectSection::getId).collect(Collectors.toList()); if(null != sectionList && !sectionList.isEmpty()){ - List sectionVOList = JsonUtils.jsonToList(sectionList,ProjectSectionVO.class); BaseResponse> response = tenderApi.getRegisterCountByPackage(sectionIds); CommonExceptionEnum.FRAME_EXCEPTION_COMMON_NOT_UPDATE.customValidName(response.getMessage(),!response.isSuccess()); Map resultMap = response.getData(); diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/entity/ProjectSectionVO.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/entity/ProjectSectionVO.java index 64f07e0..07c29b4 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/entity/ProjectSectionVO.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/entity/ProjectSectionVO.java @@ -92,4 +92,7 @@ public class ProjectSectionVO extends ProjectSection implements Serializable { @ApiModelProperty(value = "所处环节百分比") private BigDecimal linkPercentage; + + @ApiModelProperty(value = "标段总数") + private Integer sectionCount; } diff --git a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java index 32a3cbf..88d5f01 100644 --- a/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java +++ b/src/main/java/com/chinaunicom/mall/ebtp/project/projectsection/service/impl/ProjectSectionServiceImpl.java @@ -500,7 +500,6 @@ public class ProjectSectionServiceImpl extends BaseServiceImpl getListAssembleProjectPage(List projectIds) { LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); queryWrapper.in(ProjectSection::getProjectId,projectIds); - queryWrapper.groupBy(ProjectSection::getProjectId).groupBy(ProjectSection::getBidSectCode).having("bid_sect_code <=1"); return this.list(queryWrapper); }