Did rd for airport and route

This commit is contained in:
Sunguin Peng
2016-09-24 17:44:13 +12:00
parent a386d28ea1
commit 960de77476
14 changed files with 428 additions and 19 deletions
@@ -1809,13 +1809,14 @@ public class Dataset {
Airport newAirport = parser.parseAirport(name, city, country, IATA_FFA, ICAO, lat, lng, alt, timezone, DST, olson);
airport.setName(name);
airport.setCityName(city);
airport.getCity().setName(city);
//airport.getCity().setName(city);
airport.setCountryName(country);
airport.getCountry().setName(country);
//airport.getCountry().setName(country);
airport.setIATA_FFA(IATA_FFA);
airport.setICAO(ICAO);
airport.setLatitude(newAirport.getLatitude());
airport.setLongitude(newAirport.getLongitude());
airport.setAltitude(newAirport.getAltitude());
airport.getCity().setTimezone(Double.parseDouble(timezone));
airport.getCountry().setDST(DST);
airport.getCity().setTimeOlson(olson);
@@ -11,7 +11,8 @@ public enum SceneCode {
FLIGHT_RAW_DATA("flight_raw_data.fxml"), AIRPORT_ANALYSER("airport_analyser.fxml"), ROUTE_ANALYSER("route_analyser.fxml"),
AIRPORT_DIST_CALC("airport_dist_calc.fxml"), AIRLINE_ADD("airline_add_form.fxml"), AIRLINE_FILTER("airline_filter_form.fxml"),
AIRPORT_ADD("airport_add_form.fxml"), AIRPORT_FILTER("airport_filter_form.fxml"), ROUTE_ADD("route_add_form.fxml"),
ROUTE_FILTER("route_filter_form.fxml"), AIRLINE_EDIT("airline_edit_form.fxml");
ROUTE_FILTER("route_filter_form.fxml"), AIRLINE_EDIT("airline_edit_form.fxml"), AIRPORT_EDIT("airport_edit_form.fxml"),
ROUTE_EDIT("route_edit_form.fxml");
private String filePath;
@@ -18,6 +18,8 @@ public class Session implements Serializable {
private HashMap<Integer, String> filteredRoutes;
private String airlineToEdit;
private String airportToEdit;
private String routeToEdit;
/**
@@ -83,4 +85,20 @@ public class Session implements Serializable {
public String getAirlineToEdit() {
return airlineToEdit;
}
public String getAirportToEdit() {
return airportToEdit;
}
public void setAirportToEdit(String airport) {
this.airportToEdit = airport;
}
public String getRouteToEdit() {
return routeToEdit;
}
public void setRouteToEdit(String route) {
this.routeToEdit = route;
}
}
@@ -7,6 +7,7 @@ import javafx.scene.control.TextField;
import javafx.stage.Stage;
import seng202.group9.Controller.DataException;
import seng202.group9.Controller.Dataset;
import seng202.group9.Controller.EntryParser;
import seng202.group9.Controller.Session;
import seng202.group9.Core.Airline;
@@ -42,6 +43,9 @@ public class AirlineEditController extends Controller {
public void editAirline() {
try {
EntryParser parser = new EntryParser();
parser.parseAirline(airlNameEdit.getText(), airlAliasEdit.getText(), airlIATAEdit.getText(),
airlICAOEdit.getText(), airlCallsignEdit.getText(), airlCountryEdit.getText(), airlActiveEdit.getText());
theDataSet.editAirline(toEdit, airlNameEdit.getText(), airlAliasEdit.getText(), airlIATAEdit.getText(),
airlICAOEdit.getText(), airlCallsignEdit.getText(), airlCountryEdit.getText(), airlActiveEdit.getText());
@@ -54,9 +58,8 @@ public class AirlineEditController extends Controller {
Stage stage = (Stage) applyButton.getScene().getWindow();
stage.close();
} catch (DataException e) {
System.err.println("Harambe: " + e.getMessage());
System.err.println("RIP Harambe: " + e.getMessage() + "IT WAS TOO SOON");
}
}
public void load() {
@@ -3,6 +3,7 @@ package seng202.group9.GUI;
import javafx.collections.FXCollections;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.ComboBox;
import javafx.scene.control.TextField;
import javafx.stage.Stage;
@@ -37,7 +38,7 @@ public class AirportAddController extends Controller {
@FXML
private TextField airpTzAdd;
@FXML
private TextField addButton;
private Button addButton;
//Set an empty Dataset to be assigned later
private Dataset theDataSet = null;
@@ -0,0 +1,92 @@
package seng202.group9.GUI;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.stage.Stage;
import seng202.group9.Controller.DataException;
import seng202.group9.Controller.Dataset;
import seng202.group9.Controller.EntryParser;
import seng202.group9.Controller.Session;
import seng202.group9.Core.Airport;
/**
* Created by Sunguin on 2016/09/24.
*/
public class AirportEditController extends Controller {
//Setting up text fields for adding data
@FXML
private TextField airpNameEdit;
@FXML
private TextField airpCityEdit;
@FXML
private TextField airpCountryEdit;
@FXML
private TextField airpIATAFAAEdit;
@FXML
private TextField airpICAOEdit;
@FXML
private TextField airpLatitudeEdit;
@FXML
private TextField airpLongitudeEdit;
@FXML
private TextField airpAltitudeEdit;
@FXML
private TextField airpTimezoneEdit;
@FXML
private TextField airpDSTEdit;
@FXML
private TextField airpTzEdit;
@FXML
private Button editButton;
//Set an empty Dataset to be assigned later
private Dataset theDataSet = null;
private Session currentSession = null;
private Airport toEdit = null;
public void editAirport() {
try {
EntryParser parser = new EntryParser();
parser.parseAirport(airpNameEdit.getText(), airpCityEdit.getText(), airpCountryEdit.getText(), airpIATAFAAEdit.getText(),
airpICAOEdit.getText(), airpLatitudeEdit.getText(), airpLongitudeEdit.getText(), airpAltitudeEdit.getText(),
airpTimezoneEdit.getText(), airpDSTEdit.getText(), airpTzEdit.getText());
theDataSet.editAirport(toEdit, airpNameEdit.getText(), airpCityEdit.getText(), airpCountryEdit.getText(), airpIATAFAAEdit.getText(),
airpICAOEdit.getText(), airpLatitudeEdit.getText(), airpLongitudeEdit.getText(), airpAltitudeEdit.getText(),
airpTimezoneEdit.getText(), airpDSTEdit.getText(), airpTzEdit.getText());
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("Airport Edit Successful");
alert.setHeaderText("Airport data edited!");
alert.setContentText("Your airport data has been successfully edited.");
alert.showAndWait();
Stage stage = (Stage) editButton.getScene().getWindow();
stage.close();
} catch (DataException e) {
System.err.println("RIP Harambe: " + e.getMessage() + "IT WAS TOO SOON");
}
}
public void load() {
theDataSet = getParent().getCurrentDataset();
currentSession = getParent().getSession();
toEdit = theDataSet.getAirportDictionary().get(currentSession.getAirportToEdit());
airpNameEdit.setText(toEdit.getName());
airpCityEdit.setText(toEdit.getCityName());
airpCountryEdit.setText(toEdit.getCountryName());
airpIATAFAAEdit.setText(toEdit.getIATA_FFA());
airpICAOEdit.setText(toEdit.getICAO());
airpLatitudeEdit.setText(Double.toString(toEdit.getLatitude()));
airpLongitudeEdit.setText(Double.toString(toEdit.getLongitude()));
airpAltitudeEdit.setText(Double.toString(toEdit.getAltitude()));
airpTimezoneEdit.setText(Double.toString(toEdit.getTimezone()));
airpDSTEdit.setText(toEdit.getDST());
airpTzEdit.setText(toEdit.getTz());
}
}
@@ -5,7 +5,6 @@ import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.scene.control.*;
import javafx.scene.control.cell.PropertyValueFactory;
import seng202.group9.Controller.AirportFilter;
import seng202.group9.Controller.Dataset;
import seng202.group9.Controller.SceneCode;
import seng202.group9.Controller.Session;
@@ -89,14 +88,17 @@ public class AirportRDController extends Controller{
public void openFilter() {
createPopUpStage(SceneCode.AIRPORT_FILTER, 600, 480);
ArrayList<Airport> d = new ArrayList();
for(int i = 0; i < theDataSet.getAirports().size(); i++) {
if (currentSession.getFilteredAirports().containsValue(theDataSet.getAirports().get(i).getName())
&& currentSession.getFilteredAirports().containsKey(i)) {
d.add(theDataSet.getAirports().get(i));
if (currentSession.getFilteredAirports() != null) {
ArrayList<Airport> d = new ArrayList();
for (int i = 0; i < theDataSet.getAirports().size(); i++) {
if (currentSession.getFilteredAirports().containsValue(theDataSet.getAirports().get(i).getName())
&& currentSession.getFilteredAirports().containsKey(i)) {
d.add(theDataSet.getAirports().get(i));
}
}
tableViewAirportRD.setItems(FXCollections.observableArrayList(d));
}
tableViewAirportRD.setItems(FXCollections.observableArrayList(d));
}
/**
@@ -127,6 +129,17 @@ public class AirportRDController extends Controller{
}
}
public void editAirport() {
Airport toEdit = tableViewAirportRD.getSelectionModel().getSelectedItem();
currentSession.setAirportToEdit(toEdit.getName());
createPopUpStage(SceneCode.AIRPORT_EDIT, 600, 480);
// System.out.println(toEdit.getName() + "," + toEdit.getCity() + "," + toEdit.getCountry() + "," + toEdit.getIATA_FFA()
// + "," + toEdit.getICAO() + "," + toEdit.getLatitude() + "," + toEdit.getLongitude() + "," + toEdit.getAltitude()
// + "," + toEdit.getTimezone() + "," + toEdit.getDST() + "," + toEdit.getTz());
tableViewAirportRD.refresh();
}
/**
* Analyses the current data and creates a graph based on the data.
@@ -0,0 +1,73 @@
package seng202.group9.GUI;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.stage.Stage;
import seng202.group9.Controller.DataException;
import seng202.group9.Controller.Dataset;
import seng202.group9.Controller.EntryParser;
import seng202.group9.Controller.Session;
import seng202.group9.Core.Route;
/**
* Created by Sunguin on 2016/09/24.
*/
public class RouteEditController extends Controller {
@FXML
private TextField rAirlineEdit;
@FXML
private TextField rSourceEdit;
@FXML
private TextField rDestEdit;
@FXML
private TextField rCodeshareEdit;
@FXML
private TextField rStopsEdit;
@FXML
private TextField rEquipmentEdit;
@FXML
private Button editButton;
private Dataset theDataSet = null;
private Session currentSession = null;
private Route toEdit = null;
public void editRoute() {
try {
EntryParser parser = new EntryParser();
parser.parseRoute(rAirlineEdit.getText(), rSourceEdit.getText(), rDestEdit.getText(), rCodeshareEdit.getText(),
rStopsEdit.getText(), rEquipmentEdit.getText());
theDataSet.editRoute(toEdit, rAirlineEdit.getText(), rSourceEdit.getText(), rDestEdit.getText(), rCodeshareEdit.getText(),
rStopsEdit.getText(), rEquipmentEdit.getText());
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("Route Edit Successful");
alert.setHeaderText("Route data edited!");
alert.setContentText("Your route data has been successfully edited.");
alert.showAndWait();
Stage stage = (Stage) editButton.getScene().getWindow();
stage.close();
} catch (DataException e) {
System.err.println("RIP Harambe: " + e.getMessage() + "IT WAS TOO SOON");
}
}
public void load() {
theDataSet = getParent().getCurrentDataset();
currentSession = getParent().getSession();
toEdit = theDataSet.getRouteDictionary().get(currentSession.getRouteToEdit());
rAirlineEdit.setText(toEdit.getAirlineName());
rSourceEdit.setText(toEdit.getDepartureAirport());
rDestEdit.setText(toEdit.getArrivalAirport());
rCodeshareEdit.setText(toEdit.getCode());
rStopsEdit.setText(Integer.toString(toEdit.getStops()));
rEquipmentEdit.setText(toEdit.getEquipment());
}
}
@@ -78,14 +78,16 @@ public class RouteRDController extends Controller {
public void openFilter() {
createPopUpStage(SceneCode.ROUTE_FILTER, 600, 330);
ArrayList<Route> d = new ArrayList();
for(int i = 0; i < theDataSet.getRoutes().size(); i++) {
if (currentSession.getFilteredRoutes().containsValue(theDataSet.getRoutes().get(i).getAirlineName())
&& currentSession.getFilteredRoutes().containsKey(i)) {
d.add(theDataSet.getRoutes().get(i));
if (currentSession.getFilteredRoutes() != null) {
ArrayList<Route> d = new ArrayList();
for (int i = 0; i < theDataSet.getRoutes().size(); i++) {
if (currentSession.getFilteredRoutes().containsValue(theDataSet.getRoutes().get(i).getAirlineName())
&& currentSession.getFilteredRoutes().containsKey(i)) {
d.add(theDataSet.getRoutes().get(i));
}
}
tableViewRouteRD.setItems(FXCollections.observableArrayList(d));
}
tableViewRouteRD.setItems(FXCollections.observableArrayList(d));
}
/**
@@ -112,6 +114,18 @@ public class RouteRDController extends Controller {
}
}
public void editRoute() {
Route toEdit = tableViewRouteRD.getSelectionModel().getSelectedItem();
currentSession.setRouteToEdit(toEdit.getAirlineName() + toEdit.getDepartureAirport() + toEdit.getArrivalAirport() +
toEdit.getCode() + toEdit.getStops() + toEdit.getEquipment());
createPopUpStage(SceneCode.ROUTE_EDIT, 600, 330);
// System.out.println(toEdit.getName() + "," + toEdit.getCity() + "," + toEdit.getCountry() + "," + toEdit.getIATA_FFA()
// + "," + toEdit.getICAO() + "," + toEdit.getLatitude() + "," + toEdit.getLongitude() + "," + toEdit.getAltitude()
// + "," + toEdit.getTimezone() + "," + toEdit.getDST() + "," + toEdit.getTz());
tableViewRouteRD.refresh();
}
/**
* Analyses the current data and creates a graph based on the data.