| | |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.core.toolkit.Wrappers; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | |
| | | } |
| | | |
| | | // 3.分页查询保单申请列表 |
| | | IPage<XpPolicyApplication> page = lambdaQuery().in(CollUtil.isNotEmpty(operationUserIds), XpPolicyApplication::getApplicantId, operationUserIds) |
| | | LambdaQueryWrapper<XpPolicyApplication> lambdaQueryWrapper = new LambdaQueryWrapper<>(); |
| | | if (Objects.nonNull(query.getStartTime())) { |
| | | lambdaQueryWrapper.ge(XpPolicyApplication::getCreateTime, LocalDateTime.of(query.getStartTime(), LocalTime.MIN)); |
| | | } |
| | | if (Objects.nonNull(query.getStartTime())) { |
| | | lambdaQueryWrapper.le(XpPolicyApplication::getCreateTime, LocalDateTime.of(query.getEndTime(), LocalTime.MAX)); |
| | | } |
| | | lambdaQueryWrapper.in(CollUtil.isNotEmpty(operationUserIds), XpPolicyApplication::getApplicantId, operationUserIds) |
| | | .in(CollUtil.isNotEmpty(vehicleIds), XpPolicyApplication::getVehicleId, vehicleIds) |
| | | .eq(Objects.nonNull(query.getAuditStatus()), XpPolicyApplication::getAuditStatus, query.getAuditStatus()) |
| | | .ge(Objects.nonNull(query.getStartTime()), XpPolicyApplication::getCreateTime, LocalDateTime.of(query.getStartTime(), LocalTime.MIN)) |
| | | .le(Objects.nonNull(query.getEndTime()), XpPolicyApplication::getCreateTime, LocalDateTime.of(query.getEndTime(), LocalTime.MAX)) |
| | | .orderByDesc(XpPolicyApplication::getCreateTime).page(new Page<>(query.getPageNum(), query.getPageSize())); |
| | | |
| | | .orderByDesc(XpPolicyApplication::getCreateTime); |
| | | Page<XpPolicyApplication> page = page(new Page<>(query.getPageNum(), query.getPageSize()), lambdaQueryWrapper); |
| | | //4.批量获取相关用户和车辆信息 |
| | | Set<Long> operationsUserIdSet = page.getRecords().stream().map(XpPolicyApplication::getApplicantId).filter(Objects::nonNull).collect(Collectors.toSet()); |
| | | Set<Long> vehicleIdSet = page.getRecords().stream().map(XpPolicyApplication::getVehicleId).filter(Objects::nonNull).collect(Collectors.toSet()); |
| | |
| | | |
| | | // 5. 组装 VO |
| | | List<XpPolicyApplicationVO> voList = page.getRecords().stream() |
| | | .map(item ->{ |
| | | return convertToPageVO(item, longXpVehicleMap, longXpOperationsUserMap, auditUserMap); |
| | | } ) |
| | | .map(item -> convertToPageVO(item, longXpVehicleMap, longXpOperationsUserMap, auditUserMap)) |
| | | .collect(Collectors.toList()); |
| | | // 6. 返回分页结果 |
| | | resultPage.setTotal(page.getTotal()); |