| | |
| | | PageInfo<XpCruiseOrderPageVO> pageInfo = new PageInfo<>(query.getPageNum(), query.getPageSize()); |
| | | LambdaQueryWrapper<XpCruiseOrder> wrapper = new LambdaQueryWrapper<XpCruiseOrder>() |
| | | .eq(XpCruiseOrder::getMissionId, String.valueOf(query.getMissionId())) |
| | | .like(StringUtils.isNotBlank(query.getOrderNumber()), XpCruiseOrder::getOrderNumber, query.getOrderNumber()) |
| | | .eq(query.getStatus() != null, XpCruiseOrder::getStatus, query.getStatus()); |
| | | .like(Objects.nonNull(query.getId()), XpCruiseOrder::getId, query.getId()) |
| | | .eq(query.getStatus() != null, XpCruiseOrder::getStatus, query.getStatus()) |
| | | .eq(Objects.nonNull(query.getFleetId()), XpCruiseOrder::getFleetId, query.getFleetId()); |
| | | |
| | | if (query.getStartTime() != null) { |
| | | wrapper.ge(BaseModel::getCreateTime, query.getStartTime().atStartOfDay()); |
| | |
| | | if (query.getEndTime() != null) { |
| | | wrapper.le(BaseModel::getCreateTime, query.getEndTime().plusDays(1).atStartOfDay()); |
| | | } |
| | | |
| | | if (query.getFleetId() != null) { |
| | | R<List<Long>> fleetVehicleResult = xpFleetVehicleClient.listVehicleIdsByFleetId(query.getFleetId()); |
| | | if (fleetVehicleResult == null || CollectionUtils.isEmpty(fleetVehicleResult.getData())) { |
| | | pageInfo.setRecords(Collections.emptyList()); |
| | | return pageInfo; |
| | | } |
| | | wrapper.in(XpCruiseOrder::getVehicleId, fleetVehicleResult.getData()); |
| | | } |
| | | //使用订单中的车队ID进行查询 |
| | | // if (query.getFleetId() != null) { |
| | | // R<List<Long>> fleetVehicleResult = xpFleetVehicleClient.listVehicleIdsByFleetId(query.getFleetId()); |
| | | // if (fleetVehicleResult == null || CollectionUtils.isEmpty(fleetVehicleResult.getData())) { |
| | | // pageInfo.setRecords(Collections.emptyList()); |
| | | // return pageInfo; |
| | | // } |
| | | // wrapper.in(XpCruiseOrder::getVehicleId, fleetVehicleResult.getData()); |
| | | // } |
| | | |
| | | if (StringUtils.isNotBlank(query.getPlateNumber())) { |
| | | R<List<XpVehicle>> vehicleResult = xpVehicleClient.listByPlateNumber(query.getPlateNumber()); |
| | |
| | | wrapper.in(XpCruiseOrder::getVehicleId, vehicleIds); |
| | | } |
| | | |
| | | wrapper.orderByDesc(BaseModel::getCreateTime); |
| | | wrapper.orderByDesc(XpCruiseOrder::getCreateTime); |
| | | Page<XpCruiseOrder> page = new Page<>(query.getPageNum(), query.getPageSize()); |
| | | Page<XpCruiseOrder> pageResult = this.page(page, wrapper); |
| | | if (CollectionUtils.isEmpty(pageResult.getRecords())) { |
| | |
| | | } else { |
| | | vehicleMap = Collections.emptyMap(); |
| | | } |
| | | Map<Long, Long> vehicleFleetIdMap = new HashMap<>(); |
| | | if (!vehicleIds.isEmpty()) { |
| | | for (Long vehicleId : vehicleIds) { |
| | | R<Long> fleetIdResult = xpFleetVehicleClient.getFleetIdByVehicleId(vehicleId); |
| | | if (fleetIdResult != null && fleetIdResult.getData() != null) { |
| | | vehicleFleetIdMap.put(vehicleId, fleetIdResult.getData()); |
| | | } |
| | | } |
| | | } |
| | | // Map<Long, Long> vehicleFleetIdMap = new HashMap<>(); |
| | | // if (!vehicleIds.isEmpty()) { |
| | | // for (Long vehicleId : vehicleIds) { |
| | | // R<Long> fleetIdResult = xpFleetVehicleClient.getFleetIdByVehicleId(vehicleId); |
| | | // if (fleetIdResult != null && fleetIdResult.getData() != null) { |
| | | // vehicleFleetIdMap.put(vehicleId, fleetIdResult.getData()); |
| | | // } |
| | | // } |
| | | // } |
| | | // Map<Long, String> fleetNameMap; |
| | | // if (!vehicleFleetIdMap.isEmpty()) { |
| | | // List<Long> fleetIds = vehicleFleetIdMap.values().stream().distinct().collect(Collectors.toList()); |
| | | // R<List<XpFleet>> fleetResult = xpFleetClient.listByIds(fleetIds); |
| | | // if (fleetResult != null && !CollectionUtils.isEmpty(fleetResult.getData())) { |
| | | // fleetNameMap = fleetResult.getData().stream() |
| | | // .collect(Collectors.toMap(XpFleet::getId, XpFleet::getFleetName, (a, b) -> a)); |
| | | // } else { |
| | | // fleetNameMap = Collections.emptyMap(); |
| | | // } |
| | | // } else { |
| | | // fleetNameMap = Collections.emptyMap(); |
| | | // } |
| | | Map<Long, String> fleetNameMap; |
| | | if (!vehicleFleetIdMap.isEmpty()) { |
| | | List<Long> fleetIds = vehicleFleetIdMap.values().stream().distinct().collect(Collectors.toList()); |
| | | R<List<XpFleet>> fleetResult = xpFleetClient.listByIds(fleetIds); |
| | | Set<Long> fleetIds = pageResult.getRecords().stream() |
| | | .map(XpCruiseOrder::getFleetId) |
| | | .filter(Objects::nonNull) |
| | | .collect(Collectors.toSet()); |
| | | if (!fleetIds.isEmpty()) { |
| | | R<List<XpFleet>> fleetResult = xpFleetClient.listByIds(new ArrayList<>(fleetIds)); |
| | | if (fleetResult != null && !CollectionUtils.isEmpty(fleetResult.getData())) { |
| | | fleetNameMap = fleetResult.getData().stream() |
| | | .collect(Collectors.toMap(XpFleet::getId, XpFleet::getFleetName, (a, b) -> a)); |
| | |
| | | if (vehicle != null) { |
| | | vo.setPlateNumber(vehicle.getPlateNumber()); |
| | | } |
| | | Long fleetId = vehicleFleetIdMap.get(order.getVehicleId()); |
| | | // Long fleetId = vehicleFleetIdMap.get(order.getVehicleId()); |
| | | Long fleetId = order.getFleetId(); |
| | | if (fleetId != null) { |
| | | vo.setFleetName(fleetNameMap.get(fleetId)); |
| | | } |