Skip to content
Snippets Groups Projects
Commit f222f73b authored by rokibulislam's avatar rokibulislam
Browse files

update rest api

parent 72968d92
No related branches found
No related tags found
1 merge request!13Flights tests
Showing
with 21 additions and 131 deletions
......@@ -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;
}
......@@ -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>
......
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;
}
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;
}
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;
}
......@@ -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);
}
......
......@@ -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);
}
}
......@@ -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() {
......
......@@ -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);
......
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;
......
......@@ -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());
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment