From ad2014e6a1a48c8e4feb288f427ffdea65ca952d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Slov=C3=ADk?= <xslovik@fi.muni.cz>
Date: Thu, 13 Apr 2023 19:06:46 +0200
Subject: [PATCH] Adding GET and DELETE operations to FlightController

---
 .../pa165/core/facade/flight/FlightFacade.java  |  2 --
 .../core/facade/flight/FlightFacadeImpl.java    | 17 +++++++++++------
 .../fi/pa165/core/rest/FlightController.java    |  5 +++--
 3 files changed, 14 insertions(+), 10 deletions(-)

diff --git a/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacade.java b/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacade.java
index 8e79380..68f5cda 100644
--- a/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacade.java
+++ b/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacade.java
@@ -19,6 +19,4 @@ public interface FlightFacade<K> {
     List<FlightDto> findAll();
 
     void deleteById(K id);
-
-    void deleteAll();
 }
diff --git a/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacadeImpl.java b/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacadeImpl.java
index f0c8acd..30f3e88 100644
--- a/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacadeImpl.java
+++ b/core/src/main/java/cz/muni/fi/pa165/core/facade/flight/FlightFacadeImpl.java
@@ -54,16 +54,21 @@ public class FlightFacadeImpl implements FlightFacade<Long> {
 
     @Override
     public List<FlightDto> findAll() {
-        return null;
-    }
+        var foundFlights = flightService.findAll();
+        var flightDtos = foundFlights
+                .stream()
+                .map(flightMapper::toDto)
+                .toList();
 
-    @Override
-    public void deleteById(Long id) {
+        for (var i = 0; i < foundFlights.size(); i++) {
+            flightDtos.get(i).setStewards(mapStewardDtos(foundFlights.get(i)));
+        }
 
+        return flightDtos;
     }
 
     @Override
-    public void deleteAll() {
-
+    public void deleteById(Long id) {
+        flightService.deleteById(id);
     }
 }
diff --git a/core/src/main/java/cz/muni/fi/pa165/core/rest/FlightController.java b/core/src/main/java/cz/muni/fi/pa165/core/rest/FlightController.java
index e95efbd..5c7aee6 100644
--- a/core/src/main/java/cz/muni/fi/pa165/core/rest/FlightController.java
+++ b/core/src/main/java/cz/muni/fi/pa165/core/rest/FlightController.java
@@ -45,7 +45,8 @@ public class FlightController implements FlightApiDelegate {
      */
     @Override
     public ResponseEntity<Void> deleteFlight(Long id) {
-        return FlightApiDelegate.super.deleteFlight(id);
+        flightFacade.deleteById(id);
+        return null;
     }
 
     /**
@@ -57,7 +58,7 @@ public class FlightController implements FlightApiDelegate {
      */
     @Override
     public ResponseEntity<List<FlightDto>> getAllFlights() {
-        return FlightApiDelegate.super.getAllFlights();
+        return ResponseEntity.ok(flightFacade.findAll());
     }
 
     /**
-- 
GitLab