Ignore:
Timestamp:
11/11/21 12:59:26 (3 years ago)
Author:
Ema <ema_spirova@…>
Branches:
master
Children:
59329aa
Parents:
6c1585f
Message:

add location to planner

Location:
trip-planner/src/main/java/finki/diplomska/tripplanner/service
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trip-planner/src/main/java/finki/diplomska/tripplanner/service/LocationService.java

    r6c1585f rceaed42  
    33
    44import finki.diplomska.tripplanner.models.Location;
     5import finki.diplomska.tripplanner.models.Planner;
     6import finki.diplomska.tripplanner.models.dto.PlannerLocationDto;
    57
    68import java.util.List;
     
    1719    List<Location> findLocationsFromCityForm(Long cityId, Long companionId, Long lengthOfStay, String categoryIds);
    1820    List<Location> findLocationsFromRegionForm(Long regionId, Long companionId, Long lengthOfStay, String categoryIds);
     21    Location addLocationToPlanner(PlannerLocationDto plannerLocationDto);
     22    List<Location> getAllLocationsForPlanner(Long plannerId);
     23
    1924}
  • trip-planner/src/main/java/finki/diplomska/tripplanner/service/PlannerService.java

    r6c1585f rceaed42  
    1414        List<Planner> getAllPlaners();
    1515        Optional<Planner> findById(Long id);
    16         Planner addLocationToPlanner(Long plannerId, Long locationId);
    1716        Planner editPlannerWithRequestParams(Long id, String description, String name, List<Location> locationList);
    1817        Optional<Planner> newPlanner(PlannerDto plannerDto);
  • trip-planner/src/main/java/finki/diplomska/tripplanner/service/impl/LocationServiceImpl.java

    r6c1585f rceaed42  
    22
    33import finki.diplomska.tripplanner.models.Location;
     4import finki.diplomska.tripplanner.models.Planner;
     5import finki.diplomska.tripplanner.models.dto.PlannerLocationDto;
    46import finki.diplomska.tripplanner.models.exceptions.LocationNotFoundException;
    57import finki.diplomska.tripplanner.repository.jpa.JpaLocationRepository;
     8import finki.diplomska.tripplanner.repository.jpa.JpaPlannerRepository;
    69import finki.diplomska.tripplanner.service.LocationService;
    710import org.springframework.stereotype.Service;
     
    1518
    1619    private final JpaLocationRepository locationRepository;
     20    private final JpaPlannerRepository plannerRepository;
    1721
    18     public LocationServiceImpl(JpaLocationRepository locationRepository) {
     22    public LocationServiceImpl(JpaLocationRepository locationRepository, JpaPlannerRepository plannerRepository) {
    1923        this.locationRepository = locationRepository;
     24        this.plannerRepository = plannerRepository;
    2025    }
    2126
     
    150155    }
    151156
     157    @Override
     158    public Location addLocationToPlanner(PlannerLocationDto plannerLocationDto) {
     159        Location location = this.locationRepository.findById(plannerLocationDto.getLocationId())
     160                .orElseThrow(() -> new LocationNotFoundException(plannerLocationDto.getLocationId()));
     161        Planner planner = this.plannerRepository.getById(plannerLocationDto.getPlannerId());
     162        planner.getLocationList().add(location);
     163        return this.locationRepository.save(location);
     164    }
     165
     166    @Override
     167    public List<Location> getAllLocationsForPlanner(Long plannerId) {
     168        return this.locationRepository.getAllLocationsForPlanner(plannerId);
     169    }
     170
     171
    152172}
  • trip-planner/src/main/java/finki/diplomska/tripplanner/service/impl/PlannerServiceImpl.java

    r6c1585f rceaed42  
    2222    private final JpaPlannerRepository plannerRepository;
    2323    private final JpaLocationRepository locationRepository;
    24     private final LocationService locationService;
    2524
    26     public PlannerServiceImpl(JpaPlannerRepository plannerRepository, JpaLocationRepository locationRepository, LocationService locationService) {
     25    public PlannerServiceImpl(JpaPlannerRepository plannerRepository, JpaLocationRepository locationRepository) {
    2726        this.plannerRepository = plannerRepository;
    2827        this.locationRepository = locationRepository;
    29         this.locationService = locationService;
    3028    }
    3129
     
    4038    }
    4139
    42     @Override
    43     public Planner addLocationToPlanner(Long plannerId, Long locationId) {
    44         Location location = this.locationService.findById(locationId)
    45                 .orElseThrow(() -> new LocationNotFoundException(locationId));
    46         Planner planner = this.plannerRepository.getById(plannerId);
    47         planner.getLocationList().add(location);
    48         return this.plannerRepository.save(planner);
    49     }
    5040
    5141    @Override
     
    8474        planner.setName(plannerDto.getName());
    8575        planner.setDescription(plannerDto.getDescription());
    86 
     76/*
    8777        List<Location> locationList  = new ArrayList<>();
    8878        for(Long location : plannerDto.getLocationList()){
     
    9282        }
    9383        planner.setLocationList(locationList);
     84
     85 */
    9486        return Optional.of(this.plannerRepository.save(planner));
    9587    }
Note: See TracChangeset for help on using the changeset viewer.