5
0
mirror of https://github.com/AJMicke/KickerELO.git synced 2026-03-11 13:31:02 +01:00

Hide exact game time in API

This commit is contained in:
Anton Micke
2025-07-14 13:46:24 +02:00
parent ab327ee878
commit a031213aab
4 changed files with 60 additions and 10 deletions

View File

@@ -1,6 +1,5 @@
package org.kickerelo.kickerelo.api; package org.kickerelo.kickerelo.api;
import org.kickerelo.kickerelo.data.Ergebnis1vs1;
import org.kickerelo.kickerelo.repository.Ergebnis1vs1Repository; import org.kickerelo.kickerelo.repository.Ergebnis1vs1Repository;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@@ -20,13 +19,13 @@ public class Ergebnis1vs1Controller {
} }
@GetMapping @GetMapping
public ResponseEntity<List<Ergebnis1vs1>> getAllResults() { public ResponseEntity<List<Ergebnis1vs1DTO>> getAllResults() {
return ResponseEntity.ok(ergebnis1vs1Repository.findAll()); return ResponseEntity.ok(ergebnis1vs1Repository.findAll().stream().map(Ergebnis1vs1DTO::new).toList());
} }
@GetMapping("/{id}") @GetMapping("/{id}")
public ResponseEntity<Ergebnis1vs1> getResultForId(@PathVariable Long id) { public ResponseEntity<Ergebnis1vs1DTO> getResultForId(@PathVariable Long id) {
return ergebnis1vs1Repository.findById(id).map(ResponseEntity::ok) return ergebnis1vs1Repository.findById(id).map(Ergebnis1vs1DTO::new).map(ResponseEntity::ok)
.orElseGet(() -> ResponseEntity.noContent().build()); .orElseGet(() -> ResponseEntity.noContent().build());
} }
} }

View File

@@ -0,0 +1,24 @@
package org.kickerelo.kickerelo.api;
import org.kickerelo.kickerelo.data.Ergebnis1vs1;
import org.kickerelo.kickerelo.data.Spieler;
import java.time.LocalDate;
public record Ergebnis1vs1DTO(
long id,
Spieler gewinner,
Spieler verlierer,
short toreVerlierer,
LocalDate datum
) {
public Ergebnis1vs1DTO(Ergebnis1vs1 e) {
this(
e.getId(),
e.getGewinner(),
e.getVerlierer(),
e.getToreVerlierer(),
e.getTimestamp().toLocalDate()
);
}
}

View File

@@ -1,6 +1,5 @@
package org.kickerelo.kickerelo.api; package org.kickerelo.kickerelo.api;
import org.kickerelo.kickerelo.data.Ergebnis2vs2;
import org.kickerelo.kickerelo.repository.Ergebnis2vs2Repository; import org.kickerelo.kickerelo.repository.Ergebnis2vs2Repository;
import org.springframework.http.ResponseEntity; import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.GetMapping;
@@ -20,13 +19,13 @@ public class Ergebnis2vs2Controller {
} }
@GetMapping @GetMapping
public ResponseEntity<List<Ergebnis2vs2>> getAllResults() { public ResponseEntity<List<Ergebnis2vs2DTO>> getAllResults() {
return ResponseEntity.ok(ergebnis2vs2Repository.findAll()); return ResponseEntity.ok(ergebnis2vs2Repository.findAll().stream().map(Ergebnis2vs2DTO::new).toList());
} }
@GetMapping("/{id}") @GetMapping("/{id}")
public ResponseEntity<Ergebnis2vs2> getResultForId(@PathVariable Long id) { public ResponseEntity<Ergebnis2vs2DTO> getResultForId(@PathVariable Long id) {
return ergebnis2vs2Repository.findById(id).map(ResponseEntity::ok) return ergebnis2vs2Repository.findById(id).map(Ergebnis2vs2DTO::new).map(ResponseEntity::ok)
.orElseGet(() -> ResponseEntity.noContent().build()); .orElseGet(() -> ResponseEntity.noContent().build());
} }
} }

View File

@@ -0,0 +1,28 @@
package org.kickerelo.kickerelo.api;
import org.kickerelo.kickerelo.data.Ergebnis2vs2;
import org.kickerelo.kickerelo.data.Spieler;
import java.time.LocalDate;
public record Ergebnis2vs2DTO(
long id,
Spieler gewinnerVorn,
Spieler gewinnerHinten,
Spieler verliererVorn,
Spieler verliererHinten,
short toreVerlierer,
LocalDate datum
) {
public Ergebnis2vs2DTO(Ergebnis2vs2 e) {
this(
e.getId(),
e.getGewinnerVorn(),
e.getGewinnerHinten(),
e.getVerliererVorn(),
e.getVerliererHinten(),
e.getToreVerlierer(),
e.getTimestamp().toLocalDate()
);
}
}