introduce duplicate checks for Racers in RacerService.java

This commit is contained in:
2025-12-18 15:37:15 +01:00
parent 39c9cf7f9b
commit ce85b51af3

View File

@@ -3,13 +3,12 @@ package de.pnreichmuth.timekeep_backend.services;
import de.pnreichmuth.timekeep_backend.entities.Racer;
import de.pnreichmuth.timekeep_backend.exceptions.RacerExistsException;
import de.pnreichmuth.timekeep_backend.exceptions.RacerNotFoundException;
import de.pnreichmuth.timekeep_backend.exceptions.TeamNotFoundException;
import de.pnreichmuth.timekeep_backend.repositories.RacerRepository;
import de.pnreichmuth.timekeep_backend.repositories.TeamRepository;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.UUID;
@Service
@@ -18,8 +17,20 @@ import java.util.UUID;
public class RacerService {
private final RacerRepository racerRepository;
public Racer createRacer(Racer racer){
return racerRepository.save(racer);
private void checkRacerIsDuplicate(Racer racer){
List<Racer> racers = racerRepository.findAll();
if(racers.isEmpty()){
return;
}
if (racers.stream()
.anyMatch(
dbRacer -> dbRacer.getFirstName().equals(
racer.getFirstName())
&& dbRacer.getLastName().equals(racer.getLastName())
&& !dbRacer.getRacerID().equals(racer.getRacerID())))
{
throw new RacerExistsException("A racer by this name already exists.", racer);
}
}
public Racer createRacer(String firstName, String lastName, boolean isFirstSemester){