- Timestamp:
- 02/02/22 14:15:35 (2 years ago)
- Branches:
- master
- Children:
- df4089c
- Parents:
- 9ff45d6
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sources/app/src/main/java/parkup/services/ParkingZoneService.java
r9ff45d6 r9dd526f 4 4 import org.springframework.stereotype.Service; 5 5 import parkup.data.ParkingZoneLocation; 6 import parkup.entities.ParkingSession;7 6 import parkup.entities.ParkingSpace; 8 7 import parkup.entities.ParkingZone; 9 import parkup.entities. Vraboten;8 import parkup.entities.Worker; 10 9 import parkup.repositories.ParkingSessionRepository; 11 10 import parkup.repositories.ParkingSpaceRepository; 12 11 import parkup.repositories.ParkingZoneRepository; 13 import parkup.repositories. VrabotenRepository;12 import parkup.repositories.WorkerRepository; 14 13 15 14 import javax.transaction.Transactional; … … 23 22 private final ParkingZoneRepository parkingZoneRepository; 24 23 private final ParkingSpaceRepository parkingSpaceRepository; 25 private final VrabotenRepository vrabotenRepository;24 private final WorkerRepository workerRepository; 26 25 private final ParkingSessionRepository parkingSessionRepository; 27 26 28 27 @Autowired 29 public ParkingZoneService(ParkingZoneRepository parkingZoneRepository, ParkingSpaceRepository parkingSpaceRepository, VrabotenRepository vrabotenRepository, ParkingSessionRepository parkingSessionRepository) {28 public ParkingZoneService(ParkingZoneRepository parkingZoneRepository, ParkingSpaceRepository parkingSpaceRepository, WorkerRepository workerRepository, ParkingSessionRepository parkingSessionRepository) { 30 29 this.parkingZoneRepository = parkingZoneRepository; 31 30 this.parkingSpaceRepository = parkingSpaceRepository; 32 31 this.parkingSessionRepository = parkingSessionRepository; 33 this. vrabotenRepository = vrabotenRepository;32 this.workerRepository = workerRepository; 34 33 } 35 34 36 35 public List<ParkingZone> getAllParkingZones() { 37 return parkingZoneRepository.findAll(); 36 List<ParkingZone> parkingZones= parkingZoneRepository.findAll(); 37 for(ParkingZone pz:parkingZones){ 38 setTransientVariables(pz.getId()); 39 } 40 return parkingZones; 38 41 } 39 42 40 43 public ParkingZone findById(int parkingZoneId) { 41 44 Optional<ParkingZone> parkingZone = Optional.ofNullable(this.parkingZoneRepository.findByPzId(parkingZoneId)); 42 return parkingZone.orElse(null); 45 if (!parkingZone.isPresent()) { 46 throw new IllegalStateException("ParkingZone does not exist"); 47 } 48 setTransientVariables(parkingZone.get().getId()); 49 return parkingZone.get(); 43 50 } 44 51 … … 134 141 ParkingZone parkingZone = parkingZoneRepository.findByPzId(parkingZoneId); 135 142 for (Integer vrabotenId : odgovorniLica) { 136 Vraboten vrabotenToAdd = vrabotenRepository.findByVrabotenId(vrabotenId);137 if( vrabotenToAdd!=null)138 vrabotenToAdd.getParkingZones().add(parkingZone);143 Worker workerToAdd = workerRepository.findByWorkerId(vrabotenId); 144 if(workerToAdd !=null) 145 workerToAdd.getParkingZones().add(parkingZone); 139 146 } 140 147 } … … 158 165 return parkingZoneOpt; 159 166 } 167 168 public int calculateTakenSpaces(int pzId){ 169 ParkingZone parkingZone=parkingZoneRepository.findByPzId(pzId); 170 return (int)parkingZone.getParkingSpaces().stream().filter(ParkingSpace::isTaken).count(); 171 } 172 public int calculateCapacity(int pzId){ 173 ParkingZone parkingZone=parkingZoneRepository.findByPzId(pzId); 174 return parkingZone.getParkingSpaces().size(); 175 } 176 public void setTransientVariables(int pzId){ 177 calculateCapacity(pzId); 178 calculateTakenSpaces(pzId); 179 } 160 180 } 161 181
Note:
See TracChangeset
for help on using the changeset viewer.