Ignore:
Timestamp:
02/10/22 11:13:18 (2 years ago)
Author:
andrejTavchioski <andrej.tavchioski@…>
Branches:
master
Children:
ccb2d72
Parents:
0c049e9
Message:

calculate payment fix and added error handling

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sources/app/src/main/java/parkup/services/ParkingZoneService.java

    r0c049e9 rad4da86  
    1717import static parkup.ParkUpApplication.getToken;
    1818import javax.transaction.Transactional;
    19 import java.util.ArrayList;
    20 import java.util.List;
    21 import java.util.Objects;
    22 import java.util.Optional;
     19import java.util.*;
    2320import java.util.stream.Collectors;
    2421
     
    105102
    106103        //TODO prati niza od objekti ParkingSpaces i prati objekt ParkingZoneLocation
    107         ParkingZone parkingZone = parkingZoneRepository.findByPzId(parkingZoneId);
     104            ParkingZone parkingZone = parkingZoneRepository.findByPzId(parkingZoneId);
    108105            ParkingZone parkingZoneNov = parkingZoneRepository.findByPzId(parkingZoneId);
    109106            if (parkingZoneNov!=null) {
    110                 if (pzName != null && pzName.length() > 1) { ;
     107                if (pzName != null && pzName.length() > 1) {
    111108                    if (parkingZoneNov.getPzName().equals(pzName)&&parkingZoneNov.getId()!=parkingZoneId) {
    112109                        throw new IllegalStateException("There is already a ParkingZone with the same name");
     
    141138
    142139                if (!parkingSpaces.isEmpty()) {
    143                     List<String> psNamesInZone=parkingZoneNov.getParkingSpaces().stream().map(ParkingSpace::getPsName).collect(Collectors.toList());
    144                     List<ParkingSpace> psToAdd=parkingSpaces.stream().filter(ps->!psNamesInZone.contains(ps.getPsName())).collect(Collectors.toList());
    145                     for(ParkingSpace ps:psToAdd){
    146                         parkingZoneNov.getParkingSpaces().add(ps);
    147                     }
    148                 }else{
     140                    List<ParkingSpace> spacesToDelete = parkingZoneNov.getParkingSpaces();
     141                    parkingZoneNov.setParkingSpaces(null);
     142                    parkingSpaceRepository.deleteAll(spacesToDelete);
     143                    parkingZoneNov.setParkingSpaces(parkingSpaces);
     144                }
     145                else{
    149146                    parkingZoneNov.setParkingSpaces(new ArrayList<>());
    150147                }
Note: See TracChangeset for help on using the changeset viewer.