source: sources/app/src/main/java/parkup/services/ParkingSessionService.java@ 3a58bd6

Last change on this file since 3a58bd6 was ce6ad22, checked in by DavidTrajkovski <davidtrajkovski11@…>, 3 years ago

v1 initial prototype

  • Property mode set to 100644
File size: 2.6 KB
Line 
1package parkup.services;
2
3import org.springframework.beans.factory.annotation.Autowired;
4import org.springframework.stereotype.Service;
5import parkup.entities.ParkingSession;
6import parkup.repositories.ParkingSessionRepository;
7
8import java.util.List;
9import java.util.Objects;
10import java.util.Optional;
11
12@Service
13public class ParkingSessionService {
14 private final ParkingSessionRepository parkingSessionRepository;
15
16 @Autowired
17 public ParkingSessionService(ParkingSessionRepository parkingSessionRepository) {
18 this.parkingSessionRepository = parkingSessionRepository;
19 }
20
21 public List<ParkingSession> getAllParkingSessions() {
22 return parkingSessionRepository.findAll();
23 }
24
25 public ParkingSession findById(int parkingSessionId) {
26 Optional<ParkingSession> parkingSessionOpt = Optional.ofNullable(parkingSessionRepository.findByPssId(parkingSessionId));
27 return parkingSessionOpt.orElse(null);
28 }
29
30 public void updateParkingSession(int parkingSessionId, String timeStart, String timeEnd) {
31 Optional<ParkingSession> parkingSessionOpt = Optional.ofNullable(parkingSessionRepository.findByPssId(parkingSessionId));
32 if (parkingSessionOpt.isPresent()) {
33 ParkingSession parkingSessionNov = parkingSessionRepository.findByPssId(parkingSessionId);
34 if(!parkingSessionNov.getTimeStart().equals(timeStart) && !parkingSessionNov.getTimeStart().equals(timeEnd))
35 parkingSessionNov.setTimeStart(timeStart);
36
37 if(!parkingSessionNov.getTimeEnd().equals(timeEnd) && !parkingSessionNov.getTimeEnd().equals(timeStart))
38 parkingSessionNov.setTimeEnd(timeEnd);
39 }
40 }
41
42 public void deleteParkingSession(int parkingSessionId) {
43 Optional<ParkingSession> parkingSessionOpt = Optional.ofNullable(parkingSessionRepository.findByPssId(parkingSessionId));
44 if (parkingSessionOpt.isPresent()) {
45 parkingSessionRepository.deleteByPssId(parkingSessionId);
46 } else {
47 throw new IllegalStateException("ParkingSpace doesn't exist, therefore can't be deleted");
48 }
49 }
50
51 public void addParkingSession(ParkingSession parkingSession) {
52 Optional <ParkingSession> parkingSessionOpt = Optional.ofNullable(parkingSessionRepository.findByPssId(parkingSession.getPssId()));
53 if (parkingSessionOpt.isPresent()) {
54 throw new IllegalStateException("ID already taken, ParkingSession cannot be added");
55 } else {
56 System.out.println(parkingSession);
57 parkingSessionRepository.save(parkingSession);
58 }
59 }
60}
Note: See TracBrowser for help on using the repository browser.