diff --git a/src/main/java/com/example/demo/service/GameLevelService.java b/src/main/java/com/example/demo/service/GameLevelService.java index 233a50edf56e83ac924ea7828bf56af58e0854a3..5f373af91ae766f5e679bb7cd718412a90f62324 100644 --- a/src/main/java/com/example/demo/service/GameLevelService.java +++ b/src/main/java/com/example/demo/service/GameLevelService.java @@ -1,11 +1,13 @@ package com.example.demo.service; import com.example.demo.domain.GameLevel; +import com.example.demo.domain.PhaseLevel; import com.example.demo.dto.GameLevelCreateDto; import com.example.demo.dto.GameLevelDto; import com.example.demo.dto.GameLevelUpdateDto; import com.example.demo.mapper.BeanMapper; import com.example.demo.repository.GameLevelRepository; +import com.example.demo.repository.PhaseLevelRepository; import org.apache.commons.collections4.IterableUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -22,15 +24,24 @@ public class GameLevelService { private static final Logger LOG = LoggerFactory.getLogger(GameLevelService.class); private final GameLevelRepository gameLevelRepository; + private final PhaseLevelRepository phaseLevelRepository; @Autowired - public GameLevelService(GameLevelRepository gameLevelRepository) { + public GameLevelService(GameLevelRepository gameLevelRepository, PhaseLevelRepository phaseLevelRepository) { this.gameLevelRepository = gameLevelRepository; + this.phaseLevelRepository = phaseLevelRepository; } public GameLevelDto createDefaultGameLevel(Long phaseId) { + Optional<PhaseLevel> phaseLevel = phaseLevelRepository.findById(phaseId); + if (phaseLevel.isEmpty()) { + // TODO return 404 + return null; + } + GameLevel gameLevel = new GameLevel(); - gameLevel.setTitle("Title of game"); + gameLevel.setTitle("Title of task"); + gameLevel.setPhaseLevel(phaseLevel.get()); gameLevel.setOrder(gameLevelRepository.getCurrentMaxOrder(phaseId) + 1); GameLevel persistedEntity = gameLevelRepository.save(gameLevel);