- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
sources/app/src/main/java/parkup/services/ParkingZoneService.java
rc71fa06 r80ddcae 2 2 3 3 import org.springframework.beans.factory.annotation.Autowired; 4 import org.springframework.security.core.Authentication;5 4 import org.springframework.stereotype.Service; 6 import parkup.ParkUpApplication;7 5 import parkup.data.ParkingZoneAdminView; 8 6 import parkup.data.ParkingZoneLocation; … … 15 13 import parkup.repositories.ParkingZoneRepository; 16 14 import parkup.repositories.WorkerRepository; 17 import static parkup.ParkUpApplication.getToken; 15 18 16 import javax.transaction.Transactional; 19 17 import java.util.ArrayList; … … 39 37 40 38 public List<ParkingZone> getAllParkingZones() { 41 Authentication user = getToken(); 42 String role =user.getAuthorities().stream().findFirst().get().getAuthority(); 43 String email = user.getName(); 44 List<ParkingZone> parkingZones; 45 if(role.equals("ROLE_REG_USER")) 46 parkingZones= parkingZoneRepository.findAll(); 47 else if(role.equals("ROLE_WORKER")){ 48 Worker loggedInWorker = workerRepository.findWorkerByEmail(email).orElseThrow(null); 49 parkingZones= parkingZoneRepository.findAll().stream().filter(pz->loggedInWorker.getParkingZones().contains(pz)).collect(Collectors.toList()); 50 }else if(role.equals("ROLE_ADMIN")) 51 parkingZones= parkingZoneRepository.findAll(); 52 else 53 parkingZones=parkingZoneRepository.findAll(); 39 List<ParkingZone> parkingZones= parkingZoneRepository.findAll(); 54 40 for(ParkingZone pz:parkingZones){ 55 41 setTransientVariables(pz); … … 147 133 } 148 134 }else{ 149 parkingZoneNov.setParkingSpaces(n ull);135 parkingZoneNov.setParkingSpaces(new ArrayList<>()); 150 136 } 151 137 if (!responsibleWorkers.isEmpty()) { … … 196 182 pz.setCapacity(calculateCapacity(pz.getId())); 197 183 pz.setTakenSpaces(calculateTakenSpaces(pz.getId())); 184 pz.setResponsibleWorkers(getWorkers(pz.getId())); 198 185 } 199 186 public List<WorkerDemo> getResponsibleWorkers(int pzId){ … … 201 188 return workerRepository.findAll().stream().filter(w->w.getParkingZones().contains(parkingZone)).map(WorkerDemo::new).collect(Collectors.toList()); 202 189 } 190 public List<String> getWorkers(int pzId){ 191 ParkingZone parkingZone =parkingZoneRepository.findByPzId(pzId); 192 return workerRepository.findAll().stream().filter(w->w.getParkingZones().contains(parkingZone)).map(w->w.getFirstName() + " " + w.getLastName()).collect(Collectors.toList()); 193 194 } 203 195 } 204 196
Note:
See TracChangeset
for help on using the changeset viewer.