Page 转为Page的方法
方法1:
public Page<EntityResponseDTO> queryEntity(QueryEntityDTO queryEntityDTO) {
Page<EntityPO> envPOS = baseInfoService.queryEntity(queryEntityDTO);
List<Entity> envs = baseInfoMapper.envPOStoDOS(envPOS.getContent());
List<EntityResponseDTO> dtos = baseInfoMapper.envDOStoResponseDTOS(envs);
List<EntityResponseDTO> envResponseDTOS = dtos.stream().peek(dto -> {
Platform platform = baseInfoService.queryPlatformByIp(dto.getControllerIp());
DeployStatus bpDeployStatus = recordService.queryEntityLatestBpResult(platform.getPeriodId(), dto.getEntityId());
dto.setPurposeCode(platform.getPurposeCode());
dto.setBearType(platform.getBearType());
dto.setLatestBpResult(String.valueOf(bpDeployStatus));
}).collect(Collectors.toList());
if (StrUtil.isNotBlank(queryEntityDTO.getPurposeCode())){
envResponseDTOS = dtos.stream().filter(dto -> dto.getPurposeCode().equals(queryEntityDTO.getPurposeCode())).collect(Collectors.toList());
}
if (StrUtil.isNotBlank(queryEntityDTO.getBearType())){
envResponseDTOS = dtos.stream().filter(dto -> dto.getBearType().equals(queryEntityDTO.getBearType())).collect(Collectors.toList());
}
if (StrUtil.isNotBlank(queryEntityDTO.getLatestBpResult())){
envResponseDTOS = dtos.stream().filter(dto -> dto.getLatestBpResult().equals(queryEntityDTO.getLatestBpResult())).collect(Collectors.toList());
}
return new PageImpl<>(envResponseDTOS, envPOS.getPageable(), envPOS.getTotalElements());
}