Changeset 3b17c69


Ignore:
Timestamp:
02/12/22 15:38:23 (2 years ago)
Author:
andrejTavchioski <andrej.tavchioski@…>
Branches:
master
Children:
0707e4e
Parents:
b6e52e1
Message:

fix

Location:
sources/app/src/main/java/parkup
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • sources/app/src/main/java/parkup/controllers/ParkingSessionController.java

    rb6e52e1 r3b17c69  
    2121    public List<ParkingSession> getAllParkingSessions(@PathVariable Integer parkingZoneId) {
    2222        return parkingSessionService.getAllParkingSessionsFromZone(parkingZoneId);
     23    }
     24    @GetMapping({"/parkingSession"})
     25    public ParkingSession getParkingSession(){
     26        return parkingSessionService.getParkingSession();
    2327    }
    2428
  • sources/app/src/main/java/parkup/services/ParkingSessionService.java

    rb6e52e1 r3b17c69  
    7777        Authentication token = ParkUpApplication.getToken();
    7878        Plate plate = plateRepository.findByPlate(tablica);
    79         if(plate ==null) {
    80             plateRepository.save(new Plate(tablica));
    81         }
    82         plate = plateRepository.findByPlate(tablica);
    8379        ParkingSession sessionToAdd = new ParkingSession(plate);
    8480        sessionToAdd.setParkingZone(parkingZone);
     
    145141    @Transactional
    146142    public ParkingSession endParkingSession(){
    147         Authentication token = ParkUpApplication.getToken();
    148         String role =token.getAuthorities().stream().findFirst().get().getAuthority();
    149         String email =token.getName();
    150         ParkingSession session;
    151         if(role.equals("ROLE_REG_USER")){
    152             RegisteredUser user = registeredUserRepository.findRegisteredUserByEmail(email).get();
    153             session=user.getSession();
    154         }
    155         else{
    156             Guest user = guestRepository.findGuestByEmail(email).get();
    157             session=user.getSession();
    158         }
    159         if(session==null){
    160             throw new IllegalStateException("No such session exists");
    161         }
    162         else if(session.getStatus()==SessionStatus.ENDED_UNPAID){
     143        ParkingSession parkingSession=getParkingSession();
     144        if(parkingSession==null){
     145            throw new IllegalStateException("No such session exists");
     146        }
     147        else if(parkingSession.getStatus()==SessionStatus.ENDED_UNPAID){
    163148            throw new IllegalStateException("The session you are trying to end has already been ended");
    164149        }
    165         session.setStatus(SessionStatus.ENDED_UNPAID);
    166         session.setTimeEnd(LocalDateTime.now());
    167         return session;
    168 //        ParkingSession parkingSession = parkingSessionRepository.findByPssId(id);
    169 //        if(parkingSession==null){
    170 //            throw new IllegalStateException("No such session exists");
    171 //        }
    172 //        else if(parkingSession.getStatus()==SessionStatus.ENDED_UNPAID){
    173 //            throw new IllegalStateException("The session you are trying to end has already been ended");
    174 //        }
    175 //        parkingSession.setStatus(SessionStatus.ENDED_UNPAID);
    176 //        parkingSession.setTimeEnd(LocalDateTime.now());
    177 //        return parkingSession;
     150        parkingSession.setStatus(SessionStatus.ENDED_UNPAID);
     151        parkingSession.setTimeEnd(LocalDateTime.now());
     152        return parkingSession;
    178153    }
    179154    @Transactional
     
    196171                throw new IllegalStateException("Your card has expired or the date that you have entered is incorrect");
    197172        }
     173        ParkingSession parkingSession=getParkingSession();
     174        if(parkingSession==null){
     175            throw new IllegalStateException("No such session exists");
     176        }
     177        else if(parkingSession.getStatus()==SessionStatus.ENDED_PAID){
     178            throw new IllegalStateException("The session has already been paid for");
     179        }
     180        parkingSession.setStatus(SessionStatus.ENDED_PAID);
     181        parkingSession.getParkingSpace().setTaken(false);
     182        return true;
     183    }
     184
     185    public SessionStatus getStatusOfParkirac(int regParkId){
     186        RegisteredUser registeredUser = registeredUserRepository.findByRegParkId(regParkId);
     187        List<String> plates =parkingSessionRepository.findAll().stream().filter(ps->registeredUser.getPlates().contains(ps.getPlate())).map(ps->ps.getPlate().getPlate()).collect(Collectors.toList());
     188        if(plates.size()>0)
     189        return parkingSessionRepository.findAll().stream().filter(ps->ps.getPlate().getPlate().equals(plates.get(0))).collect(Collectors.toList()).get(0).getStatus();
     190        return null;
     191    }
     192
     193    public ParkingSession getParkingSession() {
    198194        Authentication token = ParkUpApplication.getToken();
    199195        String role =token.getAuthorities().stream().findFirst().get().getAuthority();
     
    208204            parkingSession=user.getSession();
    209205        }
    210         if(parkingSession==null){
    211             throw new IllegalStateException("No such session exists");
    212         }
    213         else if(parkingSession.getStatus()==SessionStatus.ENDED_PAID){
    214             throw new IllegalStateException("The session has already been paid for");
    215         }
    216         parkingSession.setStatus(SessionStatus.ENDED_PAID);
    217         parkingSession.getParkingSpace().setTaken(false);
    218         return true;
    219     }
    220 
    221     public SessionStatus getStatusOfParkirac(int regParkId){
    222         RegisteredUser registeredUser = registeredUserRepository.findByRegParkId(regParkId);
    223         List<String> plates =parkingSessionRepository.findAll().stream().filter(ps->registeredUser.getPlates().contains(ps.getPlate())).map(ps->ps.getPlate().getPlate()).collect(Collectors.toList());
    224         if(plates.size()>0)
    225         return parkingSessionRepository.findAll().stream().filter(ps->ps.getPlate().getPlate().equals(plates.get(0))).collect(Collectors.toList()).get(0).getStatus();
    226         return null;
     206        return parkingSession;
    227207    }
    228208}
Note: See TracChangeset for help on using the changeset viewer.