diff --git a/src/main/java/ru/kayashov/bar/service/BarService.java b/src/main/java/ru/kayashov/bar/service/BarService.java index f29dd57..eac8e23 100644 --- a/src/main/java/ru/kayashov/bar/service/BarService.java +++ b/src/main/java/ru/kayashov/bar/service/BarService.java @@ -92,6 +92,19 @@ public class BarService { return BarResponseDto.mapToDto(bar); } + public BarResponseDto copyBar(Long id, String name) { + BarEntity barEntity = barEntityRepository.findById(id).orElseThrow(); + Long oldId = barEntity.getId(); + String oldName = barEntity.getName(); + barEntity.setName(name); + barEntity.setActive(false); + barEntity.setId(null); + BarEntity newBar = barEntityRepository.save(barEntity); + log.info("Бар {} - {} скопирован как {} - {}", oldId, oldName, newBar.getId(), name); + + return BarResponseDto.mapToDto(newBar); + } + private List findAllowedCocktails(List ingredients) { List result = new ArrayList<>(); for (IngredientEntity ingredient : ingredients) {