mirror of
https://github.com/PaulReichmuth/timekeep-backend.git
synced 2026-02-06 04:53:25 +00:00
refactor getRacer to be more universal
This commit is contained in:
@@ -51,7 +51,7 @@ public class RacerRestController {
|
|||||||
|
|
||||||
@GetMapping("singleRacer")
|
@GetMapping("singleRacer")
|
||||||
public ResponseEntity<@NonNull RacerWSTO> getSingleRacers(@RequestBody Racer requestRacer){
|
public ResponseEntity<@NonNull RacerWSTO> getSingleRacers(@RequestBody Racer requestRacer){
|
||||||
Racer actualRacer = racerService.getRacer(requestRacer.getFirstName(), requestRacer.getLastName());
|
Racer actualRacer = racerService.getRacer(requestRacer);
|
||||||
if (actualRacer == null){
|
if (actualRacer == null){
|
||||||
return ResponseEntity.of(
|
return ResponseEntity.of(
|
||||||
ProblemDetail.forStatusAndDetail(
|
ProblemDetail.forStatusAndDetail(
|
||||||
|
|||||||
@@ -52,6 +52,15 @@ public class RacerService {
|
|||||||
return racer;
|
return racer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Racer getRacer(Racer racer) throws RacerNotFoundException {
|
||||||
|
Racer dbRacer;
|
||||||
|
if(racer.getRacerID() != null) dbRacer = racerRepository.getRacerByRacerID(racer.getRacerID()).orElse(null);
|
||||||
|
else if(racer.getFirstName() != null && racer.getLastName() != null) dbRacer = racerRepository.getRacerByFirstNameAndLastName(racer.getFirstName(),racer.getLastName()).orElse(null);
|
||||||
|
else throw new IllegalArgumentException("Must provide either Racer ID or full Racer name");
|
||||||
|
if(dbRacer == null) throw new RacerNotFoundException("Racer not found");
|
||||||
|
return dbRacer;
|
||||||
|
}
|
||||||
|
|
||||||
public UUID getRacerIdByName(String firstName, String lastName) throws RacerNotFoundException {
|
public UUID getRacerIdByName(String firstName, String lastName) throws RacerNotFoundException {
|
||||||
Racer racer = racerRepository.getRacerByFirstNameAndLastName(firstName,lastName).orElse(null);
|
Racer racer = racerRepository.getRacerByFirstNameAndLastName(firstName,lastName).orElse(null);
|
||||||
if(racer == null) throw new RacerNotFoundException(String.format("Racer with name %s %s not found", firstName, lastName));
|
if(racer == null) throw new RacerNotFoundException(String.format("Racer with name %s %s not found", firstName, lastName));
|
||||||
@@ -74,7 +83,7 @@ public class RacerService {
|
|||||||
|
|
||||||
public void deleteRacer(Racer racer) throws RacerNotFoundException {
|
public void deleteRacer(Racer racer) throws RacerNotFoundException {
|
||||||
Racer dbRacer;
|
Racer dbRacer;
|
||||||
if(racer.getRacerID() != null) dbRacer = racerRepository.getRacerByFirstNameAndLastName(racer.getFirstName(),racer.getLastName()).orElse(null);
|
if(racer.getRacerID() != null) dbRacer = racerRepository.getRacerByRacerID(racer.getRacerID()).orElse(null);
|
||||||
else if(racer.getFirstName() != null && racer.getLastName() != null) dbRacer = racerRepository.getRacerByFirstNameAndLastName(racer.getFirstName(),racer.getLastName()).orElse(null);
|
else if(racer.getFirstName() != null && racer.getLastName() != null) dbRacer = racerRepository.getRacerByFirstNameAndLastName(racer.getFirstName(),racer.getLastName()).orElse(null);
|
||||||
else throw new IllegalArgumentException("Must provide either Racer ID or full Racer name");
|
else throw new IllegalArgumentException("Must provide either Racer ID or full Racer name");
|
||||||
if(dbRacer == null) throw new RacerNotFoundException("Racer not found");
|
if(dbRacer == null) throw new RacerNotFoundException("Racer not found");
|
||||||
|
|||||||
Reference in New Issue
Block a user