diff --git a/airport-manager-api/src/main/java/cz/muni/fi/pa165/api/flight/requests/FlightRequest.java b/airport-manager-api/src/main/java/cz/muni/fi/pa165/api/flight/requests/FlightRequest.java index c77f40905f4cf550be7ae2a2fb7c2d76bcd680a6..4a89842190768c2d94c6b0f55295ae3b55ca73c9 100644 --- a/airport-manager-api/src/main/java/cz/muni/fi/pa165/api/flight/requests/FlightRequest.java +++ b/airport-manager-api/src/main/java/cz/muni/fi/pa165/api/flight/requests/FlightRequest.java @@ -3,8 +3,6 @@ package cz.muni.fi.pa165.api.flight.requests; import lombok.AllArgsConstructor; import lombok.Data; - -import java.util.List; import java.util.UUID; @Data @@ -14,6 +12,4 @@ public class FlightRequest { private UUID origin; private UUID destination; private UUID planeId; - private List<UUID> pilotIds; - private List<UUID> stewardIds; } diff --git a/airports-flight-service/pom.xml b/airports-flight-service/pom.xml index a84470973c28ef3e7d7e2e1c284ef0ab191fda3a..a44ee2e7778cdb4d5e4c205dcf5ece87e709b97d 100644 --- a/airports-flight-service/pom.xml +++ b/airports-flight-service/pom.xml @@ -94,6 +94,11 @@ <artifactId>spring-test</artifactId> <scope>test</scope> </dependency> + <dependency> + <groupId>jakarta.validation</groupId> + <artifactId>jakarta.validation-api</artifactId> + <scope>test</scope> + </dependency> </dependencies> <build> <plugins> diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/Flight.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/Flight.java index 9ac8cd34f2afae3a36090db854bef110a8e939ec..0524c1c70e984cf3b1dc740558fe526b29dcffc9 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/Flight.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/Flight.java @@ -1,17 +1,12 @@ package cz.muni.fi.pa165.dao; import cz.muni.fi.pa165.Constants; -import cz.muni.fi.pa165.api.employee.Steward; import lombok.Data; import javax.persistence.*; import java.io.Serializable; -import java.time.LocalDateTime; -import java.util.ArrayList; -import java.util.List; import java.util.UUID; -import java.util.Set; @Data @Entity @@ -24,11 +19,4 @@ public class Flight implements Serializable { private UUID origin; private UUID destination; private UUID planeId; - - @OneToMany(mappedBy = "flightId", cascade = CascadeType.ALL, orphanRemoval = true) - private Set<FlightSteward> stewardIds; - - - @OneToMany(mappedBy = "flightId", cascade = CascadeType.ALL, orphanRemoval = true) - private Set<FlightPilot> pilotIds; } diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/FlightPilot.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/FlightPilot.java deleted file mode 100644 index cecd26df9e5f60ba93ef4a32ca79ab94e064a51c..0000000000000000000000000000000000000000 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/FlightPilot.java +++ /dev/null @@ -1,24 +0,0 @@ -package cz.muni.fi.pa165.dao; - -import cz.muni.fi.pa165.Constants; -import lombok.Data; -import javax.persistence.*; -import java.io.Serializable; -import java.util.UUID; - -@Data -@Entity -@Table(name = "flight_pilot", schema = "flight_pilot") -@Inheritance(strategy = InheritanceType.JOINED) -public class FlightPilot implements Serializable { - - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - private UUID id; - - private UUID pilotId; - - @ManyToOne - @JoinColumn(name = "flight_id") - private Flight flightId; -} diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/FlightSteward.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/FlightSteward.java deleted file mode 100644 index 4ffba9c78540b5f8e471ac9727897ec205f87cd8..0000000000000000000000000000000000000000 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/dao/FlightSteward.java +++ /dev/null @@ -1,26 +0,0 @@ -package cz.muni.fi.pa165.dao; - - -import cz.muni.fi.pa165.Constants; -import lombok.Data; - -import javax.persistence.*; -import java.io.Serializable; -import java.util.UUID; - -@Data -@Entity -@Table(name = "flight_steward", schema = "flight_steward") -@Inheritance(strategy = InheritanceType.JOINED) -public class FlightSteward implements Serializable { - - @Id - @GeneratedValue(strategy = GenerationType.AUTO) - private UUID id; - - private UUID stewardId; - - @ManyToOne - @JoinColumn(name = "flight_id") - private Flight flightId; -} diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/facade/FlightFacade.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/facade/FlightFacade.java index 4cfb78d3830bb1a5a26ebe1af28ef7575ce3ddf0..602d2bf5e8ea2ca8e4e4fc85ec43a0f004b04148 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/facade/FlightFacade.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/facade/FlightFacade.java @@ -3,7 +3,7 @@ package cz.muni.fi.pa165.facade; import cz.muni.fi.pa165.api.flight.Flight; import cz.muni.fi.pa165.api.flight.requests.FlightRequest; -import cz.muni.fi.pa165.dao.FlightPilot; +import cz.muni.fi.pa165.repository.FlightRepository; import cz.muni.fi.pa165.service.FlightService; import lombok.RequiredArgsConstructor; import org.modelmapper.ModelMapper; @@ -11,13 +11,14 @@ import org.springframework.stereotype.Service; import java.util.List; import java.util.UUID; -import java.util.stream.Collectors; @Service @RequiredArgsConstructor public class FlightFacade { private final FlightService flightService; + + private final FlightRepository flightRepository; private final ModelMapper modelMapper = new ModelMapper(); public List<Flight> getFlights( int page, int size ){ @@ -31,12 +32,13 @@ public class FlightFacade { } public Flight createFlight(FlightRequest flightRequest){ - var result = flightService.createFlight( modelMapper.map(flightRequest, cz.muni.fi.pa165.dao.Flight.class) ); - return modelMapper.map(result, Flight.class); + var result = flightService.createFlight( modelMapper.map(flightRequest, cz.muni.fi.pa165.dao.Flight.class)); + return modelMapper.map(result,Flight.class); } public Flight updateFlight(UUID id, FlightRequest flightRequest){ var result = flightService.updateFlight(id, modelMapper.map(flightRequest, cz.muni.fi.pa165.dao.Flight.class)); + return modelMapper.map(result, Flight.class); } diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightController.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightController.java index d34fb1d10e03e86f5e7ea78b6066a08878a3ad87..9cf56da096cb68ab161ec74307ef500074b01371 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightController.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightController.java @@ -2,15 +2,15 @@ package cz.muni.fi.pa165.rest; import cz.muni.fi.pa165.api.flight.Flight; import cz.muni.fi.pa165.api.flight.requests.FlightRequest; +//import cz.muni.fi.pa165.dao.Flight; import cz.muni.fi.pa165.facade.FlightFacade; +import cz.muni.fi.pa165.repository.FlightRepository; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.data.domain.Page; -import org.springframework.data.domain.PageRequest; -import org.springframework.data.domain.Pageable; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; + import java.util.List; import java.util.UUID; @@ -22,6 +22,11 @@ public class FlightController { @Autowired private final FlightFacade flightFacade; + @Autowired + private FlightRepository flightRepository; + + + @GetMapping public ResponseEntity<List<Flight>> getAllFlights( @RequestParam(defaultValue = "0") int page, @@ -30,7 +35,7 @@ public class FlightController { List<Flight> flights = flightFacade.getFlights(page, size); if( flights.isEmpty() ) { - return new ResponseEntity<>(HttpStatus.NO_CONTENT); + return new ResponseEntity<>(flights, HttpStatus.NO_CONTENT); } return new ResponseEntity<>(flights, HttpStatus.OK); @@ -40,22 +45,12 @@ public class FlightController { public Flight getFlight(@PathVariable UUID id) { return flightFacade.getFlight(id); } - - // Create a new flight @PostMapping public Flight createFlight(@RequestBody FlightRequest flightRequest) { return flightFacade.createFlight(flightRequest); } - /* - @PutMapping("/{id}") - public ResponseEntity<Flight> update(@PathVariable UUID id, @RequestBody FlightRequest flightRequest){ - Flight updatedFlight = flightFacade.updateFlight(id, flightRequest); - return new ResponseEntity<>(updatedFlight, HttpStatus.CREATED); - } - */ - - @PutMapping("/{id}") + @PostMapping("/{id}") public Flight update(@PathVariable UUID id, @RequestBody FlightRequest flightRequest){ return flightFacade.updateFlight(id, flightRequest); } @@ -66,5 +61,4 @@ public class FlightController { flightFacade.deleteFlight(id); return new ResponseEntity<>("Flight deleted sucessfully", HttpStatus.OK); } - } diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightRealizationController.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightRealizationController.java index bb4e592028e5037ad63dce4639e82aea1245f5c0..4306e94ad6de2045eda16d60900371c662f842ad 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightRealizationController.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/FlightRealizationController.java @@ -21,13 +21,6 @@ public class FlightRealizationController { @Autowired private final FlightRealizationFacade flightRealizationFacade; - /* - @GetMapping - public ResponseEntity<List<FlightRealization>> getAllFlightRealizations() { - List<FlightRealization> flightRealizations = flightRealizationFacade.getAllFlightRealizations(); - return new ResponseEntity<>(flightRealizations, HttpStatus.OK); - } - */ @GetMapping public List<FlightRealization> getAllFlightRealizations() { diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/IssueReportController.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/IssueReportController.java index 22074b1ca08542cbc2ef0321523ff9d985de4d84..11e58b0b422eaf2f8021417db5576de51ebe9af9 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/IssueReportController.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/rest/IssueReportController.java @@ -20,59 +20,27 @@ public class IssueReportController { @Autowired private final IssueReportFacade issueReportFacade; -// -// @GetMapping -// public ResponseEntity<List<cz.muni.fi.pa165.api.flight.IssueReport>> getAllIssueReports() { -// List<cz.muni.fi.pa165.api.flight.IssueReport> issueReports = issueReportFacade.getAllIssueReports(); -// return new ResponseEntity<>(issueReports, HttpStatus.OK); -// } - @GetMapping public List<IssueReport> getAllIssueReports() { return issueReportFacade.getAllIssueReports(); } - /* - @GetMapping("/{id}") - public ResponseEntity<cz.muni.fi.pa165.api.flight.IssueReport> getIssueReportById(@PathVariable("id") UUID id) { - cz.muni.fi.pa165.api.flight.IssueReport issueReport = issueReportFacade.getIssueReport(id); - return new ResponseEntity<>(issueReport, HttpStatus.OK); - } - */ - @GetMapping("/{id}") public IssueReport getIssueReportById(@PathVariable("id") UUID id) { return issueReportFacade.getIssueReport(id); } - /* - @PostMapping - public ResponseEntity<cz.muni.fi.pa165.api.flight.IssueReport> createIssueReport(@RequestBody IssueReportRequest issueReportRequest) { - cz.muni.fi.pa165.api.flight.IssueReport savedIssueReport = issueReportFacade.createIssueReport(issueReportRequest); - return new ResponseEntity<>(savedIssueReport, HttpStatus.CREATED); - } - */ - @PostMapping public IssueReport createIssueReport(@RequestBody IssueReportRequest issueReportRequest) { return issueReportFacade.createIssueReport(issueReportRequest); } - /* - @PutMapping("/{id}") - public ResponseEntity<cz.muni.fi.pa165.api.flight.IssueReport> updateIssueReport(@PathVariable("id") UUID id, @RequestBody IssueReportRequest issueReportRequest) { - cz.muni.fi.pa165.api.flight.IssueReport updatedIssueReport = issueReportFacade.updateIssueReport(id, issueReportRequest); - return new ResponseEntity<>(updatedIssueReport, HttpStatus.CREATED); - } - */ - @PutMapping("/{id}") public IssueReport updateIssueReport(@PathVariable("id") UUID id, @RequestBody IssueReportRequest issueReportRequest) { return issueReportFacade.updateIssueReport(id, issueReportRequest); } - @DeleteMapping("/{id}") public ResponseEntity<String> deleteIssueReport(@PathVariable(value = "id") UUID id) { issueReportFacade.deleteIssueReport(id); diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/FlightService.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/FlightService.java index 8cd1f2db5fd3d86ec9cc154173f0c74a58ed8c47..e204a8b31d6c52f20948d293ec9d634c44832029 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/FlightService.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/FlightService.java @@ -1,9 +1,7 @@ package cz.muni.fi.pa165.service; import cz.muni.fi.pa165.dao.Flight; -import cz.muni.fi.pa165.dao.IssueReport; import cz.muni.fi.pa165.exception.FlightNotFoundException; -import cz.muni.fi.pa165.exception.IssueReportNotFoundException; import cz.muni.fi.pa165.repository.FlightRepository; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; @@ -11,11 +9,8 @@ import org.springframework.data.domain.Page; import org.springframework.data.domain.PageRequest; import org.springframework.data.domain.Pageable; import org.springframework.stereotype.Service; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; import java.util.List; -import java.util.Optional; import java.util.UUID; import java.util.stream.Collectors; diff --git a/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/IssueReportService.java b/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/IssueReportService.java index 7d1b224860392ae16e08673da2b8ba2d006b7c38..a621546ca0e635efae3d617381dbfc1ab5fbb7a7 100644 --- a/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/IssueReportService.java +++ b/airports-flight-service/src/main/java/cz/muni/fi/pa165/service/IssueReportService.java @@ -33,7 +33,6 @@ public class IssueReportService { public IssueReport updateIssueReport(UUID id, IssueReport issueReport) { IssueReport existingIssueReport = issueReportRepository.findById(id).orElseThrow(IssueReportNotFoundException::new); - System.out.println(existingIssueReport); existingIssueReport.setDescription(issueReport.getDescription()); existingIssueReport.setFlightEncountered(issueReport.getFlightEncountered());