Ignore:
Timestamp:
11/11/21 11:55:43 (3 years ago)
Author:
andrejTavchioski <andrej.tavchioski@…>
Branches:
master
Children:
2ace8f0
Parents:
3a58bd6
Message:

fixed deleteVraboten and deleteRegistriranParkirac

File:
1 edited

Legend:

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

    r3a58bd6 r97fbc67  
    22
    33import org.springframework.beans.factory.annotation.Autowired;
     4import org.springframework.data.jpa.repository.Modifying;
    45import org.springframework.stereotype.Service;
    5 import parkup.entities.Administrator;
     6import parkup.data.ParkingZoneLocation;
     7import parkup.entities.ParkingSpace;
    68import parkup.entities.ParkingZone;
     9import parkup.entities.Vraboten;
    710import parkup.repositories.ParkingZoneRepository;
    811
    912import javax.transaction.Transactional;
     13import java.util.ArrayList;
    1014import java.util.List;
    1115import java.util.Objects;
     
    3034    }
    3135
    32     public void addParkingZone(ParkingZone parkingZone) {   //zavisno vo koj grad ili opstina i napravi proverki pred dodavanje, implementiraj u naredna faza
     36    public List<String> getAllParkingZoneNames() {
     37        List<ParkingZone> parkingZones = this.parkingZoneRepository.findAll();
     38        List<String> parkingZonesNames = new ArrayList<>();
     39        for (ParkingZone pz : parkingZones){
     40            parkingZonesNames.add(pz.getPzName());
     41        }
     42        return parkingZonesNames;
     43    }
     44
     45    public Optional<ParkingZone> addParkingZone(ParkingZone parkingZone) {   //zavisno vo koj grad ili opstina i napravi proverki pred dodavanje, implementiraj u naredna faza
    3346        Optional<ParkingZone> parkingZoneOpt = Optional.ofNullable(parkingZoneRepository.findByPzName(parkingZone.getPzName()));
    3447        if (parkingZoneOpt.isPresent()) {
     
    3851            parkingZoneRepository.save(parkingZone);
    3952        }
     53        return parkingZoneOpt;
    4054    }
    4155
     56    public ParkingZone addParkingZoneNameOnly(String name) {
     57        Optional<ParkingZone> parkingZoneOpt = Optional.ofNullable(parkingZoneRepository.findByPzName(name));
     58        if (parkingZoneOpt.isPresent()) {
     59            throw new IllegalStateException("Name already taken, try adding a ParkingZone with a different name");
     60        } else {
     61            ParkingZone parkingZone = new ParkingZone(name.trim());
     62            parkingZoneRepository.save(parkingZone);
     63            return parkingZone;
     64        }
     65    }
     66
     67    //TODO proveri dali ima odgovorni i dokolku ima dali postojat vo bazata
    4268    @Transactional
    43     public void updateParkingZone(int parkingZoneId, String pzName, int price, int capacity, String workHours, String location) {
     69    public ParkingZone updateParkingZone(int parkingZoneId, String pzName, int price, int capacity,
     70                                         String location, int from, int to, String color,
     71                                         List<ParkingSpace> parkingSpaces, ParkingZoneLocation parkingZoneLocation, List<Vraboten> odgovorniLica) {
     72
     73        for(ParkingSpace space:parkingSpaces){
     74            System.out.println(space);
     75        }
     76        for(Vraboten v : odgovorniLica){
     77            System.out.println(v.toString());
     78        }
    4479        Optional<ParkingZone> parkingZoneOpt = Optional.ofNullable(parkingZoneRepository.findByPzId(parkingZoneId));
    4580        if (parkingZoneOpt.isPresent()) {
     
    6297            }
    6398
    64             if (workHours != null && workHours.length() > 0 && !Objects.equals(parkingZoneNov.getWorkHours(), workHours)) {
    65                 parkingZoneNov.setWorkHours(workHours);
    66             }
    67 
    6899            if (location != null && location.length() > 0 && !Objects.equals(parkingZoneNov.getLocation(), location)) {
    69100                parkingZoneNov.setLocation(location);
    70101            }
     102
     103            if (from != 0 && !Objects.equals(parkingZoneNov.getFrom(), from)) {
     104                parkingZoneNov.setFrom(from);
     105            }
     106
     107            if (to != 0 && !Objects.equals(parkingZoneNov.getTo(), to)) {
     108                parkingZoneNov.setTo(to);
     109            }
     110
     111            if (color != null && color.length() > 0 && !Objects.equals(parkingZoneNov.getColor(), color)) {
     112                parkingZoneNov.setColor(color);
     113            }
     114
     115            if(parkingZoneLocation!=null){
     116                parkingZoneNov.setParkingZoneLocation(parkingZoneLocation);
     117            }
     118
     119            if(!parkingSpaces.isEmpty()){
     120                //TODO kreiraj lista od parkingSpaces, ni gi prakja false isHandicaped i isTaken
     121                parkingZoneNov.setParkingSpaces(parkingSpaces);
     122            }
     123            if(!odgovorniLica.isEmpty()){
     124
     125                parkingZoneNov.setOdgovorniLica(odgovorniLica);
     126            }
     127
     128            return parkingZoneNov;
     129        } else {
     130            throw new IllegalStateException("There ParkingZone does not exist");
    71131        }
    72132    }
    73133
    74     public void deleteParkingZone(int parkingZoneId) {
     134    @Transactional
     135    public Optional<ParkingZone> deleteParkingZone(int parkingZoneId) {
    75136        Optional<ParkingZone> parkingZoneOpt = Optional.ofNullable(parkingZoneRepository.findByPzId(parkingZoneId));
    76137        if (parkingZoneOpt.isPresent()) {
     
    79140            throw new IllegalStateException("ParkingZone doesn't exist, therefore can't be deleted");
    80141        }
     142        return parkingZoneOpt;
    81143    }
    82144}
Note: See TracChangeset for help on using the changeset viewer.