From a29e2dc36fb0e311258c433e1ed7320e91079fd3 Mon Sep 17 00:00:00 2001 From: Lorenzo Verri Date: Thu, 9 Jun 2022 17:27:50 +0200 Subject: [PATCH] #218 Added logic to other related endpoints --- .../sc/controller/admin/AdminTrailController.java | 4 ++-- .../src/main/java/org/sc/manager/TrailManager.kt | 1 - .../org/sc/processor/PlacesTrailSyncProcessor.kt | 2 +- .../src/main/java/org/sc/service/TrailService.kt | 14 ++++++++++++++ 4 files changed, 17 insertions(+), 4 deletions(-) diff --git a/backend/src/main/java/org/sc/controller/admin/AdminTrailController.java b/backend/src/main/java/org/sc/controller/admin/AdminTrailController.java index 9230411..f28fc56 100644 --- a/backend/src/main/java/org/sc/controller/admin/AdminTrailController.java +++ b/backend/src/main/java/org/sc/controller/admin/AdminTrailController.java @@ -53,7 +53,7 @@ public TrailResponse addPlaceToTrail(@PathVariable String id, errors.addAll(generalValidator.validate(placeRefDto)); if (errors.isEmpty()) { final List linkedPlaceResultDtos = - trailManager.linkTrailToPlace(id, placeRefDto); + trailService.linkTrailToPlace(id, placeRefDto); return trailResponseHelper.constructResponse(errors, linkedPlaceResultDtos, trailManager.count(), ONE, ONE); @@ -72,7 +72,7 @@ public TrailResponse removePlaceFromTrail(@PathVariable String id, errors.addAll(generalValidator.validate(placeRefDto)); if (errors.isEmpty()) { final List linkedPlaceResultDtos = - trailManager.unlinkPlace(id, placeRefDto); + trailService.unlinkPlace(id, placeRefDto); return trailResponseHelper.constructResponse(errors, linkedPlaceResultDtos, trailManager.count(), ONE, ONE); diff --git a/backend/src/main/java/org/sc/manager/TrailManager.kt b/backend/src/main/java/org/sc/manager/TrailManager.kt index 22702ef..e616329 100644 --- a/backend/src/main/java/org/sc/manager/TrailManager.kt +++ b/backend/src/main/java/org/sc/manager/TrailManager.kt @@ -141,7 +141,6 @@ class TrailManager @Autowired constructor( } } - fun unlinkPlace(id: String, placeRef: PlaceRefDto): List { val unLinkPlace = trailDAO.unLinkPlace(id, placeRefMapper.map(placeRef)) return unLinkPlace.map { trailMapper.map(it) } diff --git a/backend/src/main/java/org/sc/processor/PlacesTrailSyncProcessor.kt b/backend/src/main/java/org/sc/processor/PlacesTrailSyncProcessor.kt index 520bd4b..827817f 100644 --- a/backend/src/main/java/org/sc/processor/PlacesTrailSyncProcessor.kt +++ b/backend/src/main/java/org/sc/processor/PlacesTrailSyncProcessor.kt @@ -36,7 +36,7 @@ class PlacesTrailSyncProcessor @Autowired constructor(private val trailManager: } } - private fun updateCrosswayNameWithTrailsPassingCodes(placeId: String) { + fun updateCrosswayNameWithTrailsPassingCodes(placeId: String) { val placeList = placeManager.getById(placeId) if(placeList.isEmpty()) throw IllegalStateException("Cannot update place name of a not-existing location") val place = placeList.first() diff --git a/backend/src/main/java/org/sc/service/TrailService.kt b/backend/src/main/java/org/sc/service/TrailService.kt index f4e8aed..ec49e35 100644 --- a/backend/src/main/java/org/sc/service/TrailService.kt +++ b/backend/src/main/java/org/sc/service/TrailService.kt @@ -1,7 +1,9 @@ package org.sc.service +import org.sc.common.rest.PlaceRefDto import org.sc.common.rest.TrailDto import org.sc.data.mapper.TrailMapper +import org.sc.data.model.Trail import org.sc.data.model.TrailStatus import org.sc.manager.* import org.sc.processor.PlacesTrailSyncProcessor @@ -56,6 +58,18 @@ class TrailService @Autowired constructor(private val trailManager: TrailManager return trailManager.update(trailMapper.map(trailToUpdate)) } + fun unlinkPlace(trailId: String, + placeRef: PlaceRefDto): List { + val unLinkPlace = trailManager.unlinkPlace(trailId, placeRef) + if (placeRef.isDynamicCrossway) + placesTrailSyncProcessor.updateCrosswayNameWithTrailsPassingCodes(placeRef.placeId) + return unLinkPlace + } + + fun linkTrailToPlace(id: String, placeRefDto: PlaceRefDto): List { + TODO("Not yet implemented") + } + private fun isSwitchingToDraft( trailDto: TrailDto, trailToUpdate: TrailDto