|
@@ -6,7 +6,9 @@ import puzzeltocht.controller.dto.EventDto;
|
|
|
import puzzeltocht.controller.dto.MissionDto;
|
|
import puzzeltocht.controller.dto.MissionDto;
|
|
|
import puzzeltocht.controller.dto.TeamCreateDto;
|
|
import puzzeltocht.controller.dto.TeamCreateDto;
|
|
|
import puzzeltocht.controller.dto.TeamUpdateDto;
|
|
import puzzeltocht.controller.dto.TeamUpdateDto;
|
|
|
|
|
+import puzzeltocht.domain.Event;
|
|
|
import puzzeltocht.domain.Mission;
|
|
import puzzeltocht.domain.Mission;
|
|
|
|
|
+import puzzeltocht.domain.Team;
|
|
|
import puzzeltocht.service.EventService;
|
|
import puzzeltocht.service.EventService;
|
|
|
|
|
|
|
|
import java.util.List;
|
|
import java.util.List;
|
|
@@ -31,14 +33,25 @@ public class EventController {
|
|
|
|
|
|
|
|
@RequestMapping(method = RequestMethod.GET, path ="event/{id}")
|
|
@RequestMapping(method = RequestMethod.GET, path ="event/{id}")
|
|
|
public ResponseEntity<EventDto> event(@PathVariable UUID id) {
|
|
public ResponseEntity<EventDto> event(@PathVariable UUID id) {
|
|
|
- EventDto e = new EventDto(eventService.get(id));
|
|
|
|
|
- return ResponseEntity.ok(e);
|
|
|
|
|
|
|
+ Event e = eventService.get(id);
|
|
|
|
|
+
|
|
|
|
|
+ if (e == null) {
|
|
|
|
|
+ return ResponseEntity.notFound().build();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ return ResponseEntity.ok(new EventDto(e));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@RequestMapping(method = RequestMethod.POST, path ="event/{eventId}/team")
|
|
@RequestMapping(method = RequestMethod.POST, path ="event/{eventId}/team")
|
|
|
public ResponseEntity<UUID> teamCreate(@PathVariable UUID eventId, @RequestBody TeamCreateDto team) {
|
|
public ResponseEntity<UUID> teamCreate(@PathVariable UUID eventId, @RequestBody TeamCreateDto team) {
|
|
|
- UUID teamId = eventService.createTeam(eventId, team);
|
|
|
|
|
- return ResponseEntity.ok(teamId);
|
|
|
|
|
|
|
+ Event e = eventService.get(eventId);
|
|
|
|
|
+
|
|
|
|
|
+ if (e == null) {
|
|
|
|
|
+ return ResponseEntity.notFound().build();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ Team t = eventService.createTeam(e, team);
|
|
|
|
|
+ return ResponseEntity.ok(t.getId());
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@RequestMapping(method = RequestMethod.PUT, path ="event/{eventId}/team/{teamId}")
|
|
@RequestMapping(method = RequestMethod.PUT, path ="event/{eventId}/team/{teamId}")
|
|
@@ -46,7 +59,13 @@ public class EventController {
|
|
|
@PathVariable UUID eventId,
|
|
@PathVariable UUID eventId,
|
|
|
@PathVariable UUID teamId,
|
|
@PathVariable UUID teamId,
|
|
|
@RequestBody TeamUpdateDto update) {
|
|
@RequestBody TeamUpdateDto update) {
|
|
|
- Mission m = eventService.updateMission(eventId, teamId, update);
|
|
|
|
|
|
|
+ Event e = eventService.get(eventId);
|
|
|
|
|
+ Team t = e == null ? null : e.getTeam(teamId);
|
|
|
|
|
+ if (e == null || t == null) {
|
|
|
|
|
+ return ResponseEntity.notFound().build();
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ Mission m = eventService.updateMission(e, t, update);
|
|
|
MissionDto dto = new MissionDto(m, update.getLocation());
|
|
MissionDto dto = new MissionDto(m, update.getLocation());
|
|
|
return ResponseEntity.ok(dto);
|
|
return ResponseEntity.ok(dto);
|
|
|
}
|
|
}
|