From 5030159691a3b32b11889b3cc5f3bfd69ea9612b Mon Sep 17 00:00:00 2001 From: PiCiU1221 <96005164+PiCiU1221@users.noreply.github.com> Date: Sun, 15 Jun 2025 11:04:44 +0200 Subject: [PATCH] Add check for 0 quantity before returning --- .../zut/bookrider/service/RentalService.java | 21 ++++++++++--------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/backend/src/main/java/edu/zut/bookrider/service/RentalService.java b/backend/src/main/java/edu/zut/bookrider/service/RentalService.java index e4a08a78..865e6fa5 100644 --- a/backend/src/main/java/edu/zut/bookrider/service/RentalService.java +++ b/backend/src/main/java/edu/zut/bookrider/service/RentalService.java @@ -101,16 +101,17 @@ public PageResponseDTO getUserRentals(Pageable pageable) { User user = userService.getUser(); Page rentals = rentalRepository.findAllByUser(user, pageable); - List rentalDTOs = rentals.getContent().stream() - .map(rental -> { - int totalReturned = rentalReturnItemService.sumReturnedQuantityByRentalId(rental.getId()); - int remaining = rental.getQuantity() - totalReturned; - - RentalDTO dto = rentalMapper.map(rental); - dto.setQuantity(remaining); - return dto; - }) - .toList(); + List rentalDTOs = new ArrayList<>(); + for (Rental rental : rentals.getContent()) { + int totalReturned = rentalReturnItemService.sumReturnedQuantityByRentalId(rental.getId()); + int remaining = rental.getQuantity() - totalReturned; + + if (remaining > 0) { + RentalDTO dto = rentalMapper.map(rental); + dto.setQuantity(remaining); + rentalDTOs.add(dto); + } + } return new PageResponseDTO<>( rentalDTOs,