Made edit function work for airlines

main
Sunguin Peng 9 years ago
parent e237d058bd
commit a386d28ea1

Binary file not shown.

@ -1744,7 +1744,7 @@ public class Dataset {
EntryParser parser = new EntryParser(); EntryParser parser = new EntryParser();
parser.parseAirline(name, alias, IATA,ICAO, callsign, country, active); parser.parseAirline(name, alias, IATA,ICAO, callsign, country, active);
airline.setName(name); airline.setName(name);
airline.setAlias(name); airline.setAlias(alias);
airline.setIATA(IATA); airline.setIATA(IATA);
airline.setICAO(ICAO); airline.setICAO(ICAO);
airline.setCallSign(callsign); airline.setCallSign(callsign);
@ -1756,7 +1756,7 @@ public class Dataset {
Class.forName("org.sqlite.JDBC"); Class.forName("org.sqlite.JDBC");
c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db"); c = DriverManager.getConnection("jdbc:sqlite:res/userdb.db");
stmt = c.createStatement(); stmt = c.createStatement();
String query = "UPDATE `"+this.name+"_Airline` SET `Name` = \""+airline.getName().replace("\"", "\"\"")+"\", `Alias` = \""+airline.getActive().replace("\"", "\"\"")+"\", " + String query = "UPDATE `"+this.name+"_Airline` SET `Name` = \""+airline.getName().replace("\"", "\"\"")+"\", `Alias` = \""+airline.getAlias().replace("\"", "\"\"")+"\", " +
"`IATA` = \""+airline.getIATA().replace("\"", "\"\"")+"\", `ICAO` = \""+airline.getICAO().replace("\"", "\"\"")+"\" , `Callsign` = \""+airline.getCallSign().replace("\"", "\"\"")+"\", " + "`IATA` = \""+airline.getIATA().replace("\"", "\"\"")+"\", `ICAO` = \""+airline.getICAO().replace("\"", "\"\"")+"\" , `Callsign` = \""+airline.getCallSign().replace("\"", "\"\"")+"\", " +
"`Country` = \""+airline.getCountryName().replace("\"", "\"\"")+"\", `Active` = \""+airline.getActive().replace("\"", "\"\"")+"\" WHERE `Airline_ID` = "+airline.getID(); "`Country` = \""+airline.getCountryName().replace("\"", "\"\"")+"\", `Active` = \""+airline.getActive().replace("\"", "\"\"")+"\" WHERE `Airline_ID` = "+airline.getID();
stmt.execute(query); stmt.execute(query);

@ -1,12 +1,18 @@
package seng202.group9.GUI; package seng202.group9.GUI;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.Button; import javafx.scene.control.Button;
import javafx.scene.control.TextField; import javafx.scene.control.TextField;
import javafx.stage.Stage;
import seng202.group9.Controller.DataException;
import seng202.group9.Controller.Dataset; import seng202.group9.Controller.Dataset;
import seng202.group9.Controller.Session; import seng202.group9.Controller.Session;
import seng202.group9.Core.Airline; import seng202.group9.Core.Airline;
import java.util.ArrayList;
import java.util.HashMap;
/** /**
* Created by Sunguin on 2016/09/24. * Created by Sunguin on 2016/09/24.
*/ */
@ -32,7 +38,24 @@ public class AirlineEditController extends Controller {
private Dataset theDataSet = null; private Dataset theDataSet = null;
private Session currentSession = null; private Session currentSession = null;
private Airline toEdit = null;
public void editAirline() { public void editAirline() {
try {
theDataSet.editAirline(toEdit, airlNameEdit.getText(), airlAliasEdit.getText(), airlIATAEdit.getText(),
airlICAOEdit.getText(), airlCallsignEdit.getText(), airlCountryEdit.getText(), airlActiveEdit.getText());
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setTitle("Airline Edit Successful");
alert.setHeaderText("Airline data edited!");
alert.setContentText("Your airline data has been successfully edited.");
alert.showAndWait();
Stage stage = (Stage) applyButton.getScene().getWindow();
stage.close();
} catch (DataException e) {
System.err.println("Harambe: " + e.getMessage());
}
} }
@ -40,8 +63,7 @@ public class AirlineEditController extends Controller {
theDataSet = getParent().getCurrentDataset(); theDataSet = getParent().getCurrentDataset();
currentSession = getParent().getSession(); currentSession = getParent().getSession();
//System.out.println(currentSession.getAirlineToEdit()); toEdit = theDataSet.getAirlineDictionary().get(currentSession.getAirlineToEdit());
Airline toEdit = theDataSet.getAirlineDictionary().get(currentSession.getAirlineToEdit());
airlNameEdit.setText(toEdit.getName()); airlNameEdit.setText(toEdit.getName());
airlAliasEdit.setText(toEdit.getAlias()); airlAliasEdit.setText(toEdit.getAlias());

@ -81,14 +81,17 @@ public class AirlineRDController extends Controller {
*/ */
public void openFilter() { public void openFilter() {
createPopUpStage(SceneCode.AIRLINE_FILTER, 600, 370); createPopUpStage(SceneCode.AIRLINE_FILTER, 600, 370);
ArrayList<Airline> d = new ArrayList();
for(int i = 0; i < theDataSet.getAirlines().size(); i++) { if (currentSession.getFilteredAirlines() != null) {
if (currentSession.getFilteredAirlines().containsValue(theDataSet.getAirlines().get(i).getName()) ArrayList<Airline> d = new ArrayList();
&& currentSession.getFilteredAirlines().containsKey(i)) { for (int i = 0; i < theDataSet.getAirlines().size(); i++) {
d.add(theDataSet.getAirlines().get(i)); if (currentSession.getFilteredAirlines().containsValue(theDataSet.getAirlines().get(i).getName())
&& currentSession.getFilteredAirlines().containsKey(i)) {
d.add(theDataSet.getAirlines().get(i));
}
} }
tableViewAirlineRD.setItems(FXCollections.observableArrayList(d));
} }
tableViewAirlineRD.setItems(FXCollections.observableArrayList(d));
} }
@ -119,6 +122,11 @@ public class AirlineRDController extends Controller {
Airline toEdit = tableViewAirlineRD.getSelectionModel().getSelectedItem(); Airline toEdit = tableViewAirlineRD.getSelectionModel().getSelectedItem();
currentSession.setAirlineToEdit(toEdit.getName()); currentSession.setAirlineToEdit(toEdit.getName());
createPopUpStage(SceneCode.AIRLINE_EDIT, 600, 370); createPopUpStage(SceneCode.AIRLINE_EDIT, 600, 370);
System.out.println(toEdit.getName() + "," + toEdit.getAlias() + "," + toEdit.getIATA() + "," + toEdit.getICAO()
+ "," + toEdit.getCallSign() + "," + toEdit.getCountryName() + "," + toEdit.getActive());
tableViewAirlineRD.refresh();
} }
/** /**

Loading…
Cancel
Save