Upload
frida-linden
View
215
Download
1
Embed Size (px)
Citation preview
FLEET MANAGEMENT SOFTWAREWirtschaftsinformatik Projekt | WS 2012-13
Benny Brand Paul Fuchs Gui Ro Kong Boris Oechsle Elizaveta Olar Thomas Oppel Matthias Schmitt Markus Schönfeld
17.01.2013
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Gliederung Fleet Management Xtreme Programming Aufbau Java
MVC, Singleton- Patterns Funktionen
Fahrzeuge Reservierungen Werkstatt Statistiken PDF-Generator Testfälle (J-Unit-Tests)
Web-Applikation (PHP)
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Fleet Management Tool
Einfach Möglichkeit den firmeninternenFuhrpark zu verwalten
Reservierung Werkstatt Fahrzeuge Statistiken Online Reservierungssystem
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Xtreme ProgrammingRollen Aufgaben BeispielProduktbesitzer Hat Verantwortung, setzt
Prioritäten, Entscheider für bestes ROI
Produktmanagement, Marketing, ein Benutzer, Kunde, Manager des Benutzers, Analyst, Sponsor
Kunde Entscheidet, was gemacht wird, gibt Rückmeldung, Auftraggeber
Auftraggeber, kann auch Produktbesitzer sein
Entwickler Entwickelt das Produkt Programmierer, Tester, DB-Experte, Architekt, Designer
Projektmanager Führung des Teams Normalerweise Produktbesitzer, kann auch Entwickler sein
Benutzer Wird das zu erstellende Produkt nutzen
Nutzer des Produkts
Quelle: http://de.wikipedia.org/wiki/Extreme_Programming
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
User Stories
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Entity-Relationship-Modell
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Stored Procedures
Termin für Reparatur vereinbaren Status
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Stored Procedures
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Stored Procedures
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Stored Procedures
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Function
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Function
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MySQL: Function
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
14
Aufbau Java
• MVC und Singleton Pattern
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
MVC
• MVC Pattern– Flexible Programmierung
View Controller Model DAO
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Singleton
• Singleton Pattern– Nur ein Objekt der Klasse darf existieren
Singleton-instance: Singleton
-Singleton()+ getInstance(): Singleton
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Singleton
Beispiel:package com.hsulm.wf5.fleetmanagement.model;
public class FahrzeugDAO implements InterfaceDAO<Fahrzeug> {
private Ausstattung ausstattung;
// Singleton // nur ein Objekt der Klasse kann erzeugt werdenprivate static FahrzeugDAO instance = new FahrzeugDAO();
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Fahrzeuge
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Fahrzeuge
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Fahrzeuge
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Fahrzeuge anlegen und bearbeiten
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.view.FahrzeugBearbeiten.java
JButton btnHinzufgen = new JButton("Hinzuf\u00FCgen"); btnHinzufgen.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { String kennzeichen = kennzeichenTextField.getText(); String standort = standortTextField.getText(); String farbe = farbeTextField.getText(); String erstzulassung = erstzulassungTextField.getText(); String kraftstoffart = kraftstoffartTextField.getText(); int sitzplaetze = Integer.parseInt(sitzplaetzeTextField.getText()); DateFormat formater = new SimpleDateFormat(); Date vertragsbeginn = null; String tuev = null; try { vertragsbeginn = (Date) formater.parse(vertragsbeginnTextField.getText()); } catch (ParseException e) { e.printStackTrace(); return; } tuev = tuevTextField.getText(); int serviceintervall = Integer.parseInt(serviceintervallTextField.getText()); String getriebe = getriebeTextField.getText(); int vertragslaufzeit = Integer.parseInt(vertragslaufzeitTextField.getText()); int herstellerId = Integer.parseInt(herstellerIdTextField.getText()); int werkstattId = Integer.parseInt(werkstattIdTextField.getText()); int kilometerstand = Integer.parseInt(kilometerstandTextField.getText()); String vertragsart = vertragsartTextField.getText(); String model = modelTextField.getText(); FahrzeugController fc = FahrzeugController.getInstance();
} });
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.controller.FahrzeugController.java
public void fahrzeugUpdaten(int arrayID, String vertragsart, int serviceintervall, String kennzeichen, String standort, String tuev, String vertragsbeginn, int vertragslaufzeit, int werkstattId, int kilometerstand) throws ClassNotFoundException, InstantiationException, IllegalAccessException, UnsupportedLookAndFeelException {
Fahrzeug fahrzeug = fahrzeuge.get(arrayID);
fahrzeug.setKennzeichen(kennzeichen); fahrzeug.setKilometerstand(kilometerstand); fahrzeug.setStandort(standort); fahrzeug.setTuev(tuev); fahrzeug.setVertragsBeginn(vertragsbeginn); fahrzeug.setVertragsLaufzeitMonate(vertragslaufzeit); fahrzeug.setWerkstattId(werkstattId); fahrzeug.setVertragsart(vertragsart); fahrzeug.setServiceIntervall_KM(serviceintervall);
// fahrzeug updaten fahrzeug.objektUpdaten(fahrzeug); }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.model.FahrzeugDao.java
public void objektUpdaten(Fahrzeug object) {
try { java.sql.Connection conn = Connection.connect(); PreparedStatement preStmt = conn.prepareStatement("CALL updateFahrzeug(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");
java.sql.Date vertragsbeginn=null; if(!object.getVertragsBeginn().equals("null")){vertragsbeginn = java.sql.Date.valueOf(object.getVertragsBeginn());}
preStmt.setString(1, object.getKennzeichen()); preStmt.setString(2, object.getStandort()); preStmt.setString(3, object.getFarbe()); preStmt.setString(4, object.getErstzulassung()); preStmt.setString(5, object.getKraftstoffart()); preStmt.setInt(6, object.getSitzplaetze()); preStmt.setString(7, object.getTuev()); preStmt.setInt(8, object.getServiceIntervall_KM()); preStmt.setString(9, object.getGetriebe()); preStmt.setString(10, object.getVertragsart()); preStmt.setDate(11, vertragsbeginn); preStmt.setInt(12, object.getVertragsLaufzeitMonate()); preStmt.setInt(13, object.getWerkstattId()); preStmt.setInt(14, object.getHerstellerId()); preStmt.setString(15, object.getModell()); preStmt.setInt(16, object.getKilometerstand());
preStmt.executeUpdate(); preStmt.close(); conn.close();
} catch (SQLException sqle) {
sqle.printStackTrace(); }}
public void objektUpdaten(Fahrzeug fahrzeug) { dao.objektUpdaten(fahrzeug);
}
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Suchfunktion
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.view.MainGui.java
public JTextField sucheFahrzeug; this.sucheFahrzeug = new JTextField(); public void set_fahrzeugsucheListener(KeyListener l){ sucheFahrzeug.addKeyListener(l); }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.controller.FahrzeugController.java
public void Fahrzeuginit() { MainGUI.getInstance().getTable_2().setRowSorter(null); MainGUI.getInstance().sucheFahrzeug.setText(""); MainGUI.getInstance().set_fahrzeugsucheListener(new fahrzeug_sucheListener()); }
class fahrzeug_sucheListener implements KeyListener{ public void keyReleased(KeyEvent e) { TableRowSorter<TableModel> sorter = new TableRowSorter<TableModel>(MainGUI.getInstance().getTable_2().getModel()); MainGUI.getInstance().getTable_2().setRowSorter(sorter); filter(MainGUI.getInstance().sucheFahrzeug.getText(),sorter); } public void filter (String text,TableRowSorter sorter) { if (text.length() == 0) { sorter.setRowFilter(null); } else { try { sorter.setRowFilter(RowFilter.regexFilter("(?i)"+text)); } catch (PatternSyntaxException e) { System.out.println(e.getPattern()); } } }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Reservierungen
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
28
ReservierungenWintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Controller Werkstatt updaten
Werkstatt ws = werkstattarray.get(werkstattId); ws.setName(name); ws.setAnsprechpartner(ansprechpartner); ws.setTelefonnummer(telefonnummer); ws.seteMail(email); ws.setStrasse(strasse); ws.setPlz(plz); ws.setOrt(ort); ws.setLand(land); ws.objektUpdaten(ws);}
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Werkstattübersicht
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Werkstattübersicht
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Controller Werkstatt anlegen
//neue Werkstatt anlegen boolean flag = false; for (int i = 0; i < werkstattarray.size()-1; i++) { if (plz ==(werkstattarray.get(i).getPlz())) { ws.setOrt(werkstattarray.get(i).getOrt()); ws.setLand(werkstattarray.get(i).getLand()); flag = true; } } if (flag == true) { ws.objektAnlegen(ws);} else { ws.werkstattcityanlegen(ws); ws.objektAnlegen(ws);
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Controller WerkstattBearbeiten Felder//Werkstattbearbeitenframe befüllen public void WerkstattBearbeiten(int row) { Werkstatt werkstatt = werkstattarray.get(row); WerkstattBearbeiten wb = WerkstattBearbeiten.getInstance();
wb.get_namef().setText(werkstatt.getName()); wb.get_plzf().setText(""+werkstatt.getPlz()); wb.get_telef().setText(werkstatt.getTelefonnummer()); wb.get_strasf().setText(werkstatt.getStrasse()); wb.get_anspf().setText(werkstatt.getAnsprechpartner()); wb.get_emaif().setText(werkstatt.getEmail()); wb.get_ortf().setText(werkstatt.getOrt()); wb.get_landf().setText(werkstatt.getLand()); wb.setArrayID(row); }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Controller befüllen
//Werkstatt Combobox in Bearbeitenframe befüllen public void fahrzeugBearbeiten() { FahrzeugBearbeiten fb = FahrzeugBearbeiten.getInstance(); fb.get_Werk().removeAllItems(); for(int i =0;i<werkstattarray.size();i++){ fb.get_Werk().addItem(werkstattarray.get(i).getName()); } }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Controller löschen
// Siherheitsabfrage if(table5.getModel().removeRow(werkstattID)){ // Werkstatt aus Datenbank löschen Werkstatt werkstatt = werkstattarray.get(werkstattID); werkstatt.objektLoesche(werkstatt); // Lösche aus ArrayList von werkstattController werkstattarray.remove(werkstattID); table5.getModel().fuelleModelmitDaten(werkstattarray); table5.setRowSelectionInterval(0, 0);
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Statistiken
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.view.MainGui.javaActionListener al7 = new ActionListener() { public void actionPerformed(ActionEvent e) { FahrzeugReserviert demo = new FahrzeugReserviert("Vergleich„, "Fahrzeuge, die am meisten reserviert wurden"); demo.FahrzeugReserviertStart(); demo.pack(); demo.setVisible(true); } };
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.statisticview.FahrzeugReserviert.java
ArrayList<Fahrzeug> fz;
public FahrzeugReserviert(String applicationTitle, String chartTitle) { super(applicationTitle);
fz = new ArrayList<Fahrzeug>(); fz = FahrzeugDAO.getInstance().fahrzeugeAmMeistenReserviert();
// This will create the dataset PieDataset dataset = createDataset(); // based on the dataset we create the chart chart = createChart(dataset, chartTitle); // we put the chart into a panel ChartPanel chartPanel = new ChartPanel(chart); // default size chartPanel.setPreferredSize(new java.awt.Dimension(600, 400)); // add it to our application this.FahrzeugReserviert = chartPanel; }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.model.FahrzeugDao.java
public ArrayList<Fahrzeug> fahrzeugeAmMeistenReserviert() {
ArrayList<Fahrzeug> fahrzeugstat = new ArrayList<Fahrzeug>(); Fahrzeug fahrzeug;
try { java.sql.Connection con = Connection.connect(); CallableStatement cst; cst = con.prepareCall("Call FahrzeugAmMeistenReserviert()"); ResultSet rs = cst.executeQuery();
while (rs.next()) {
fahrzeug = new Fahrzeug(rs.getInt("AnzahlReservierungen"), rs.getString("Kennzeichen"), rs.getString("Name"), rs.getString("Modell")); fahrzeugstat.add(fahrzeug);
}
cst.close(); rs.close(); con.close(); } catch (SQLException e) { System.out.println(e.getMessage()); e.printStackTrace(); } return fahrzeugstat;
}
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
FahrzeugAmMeistenReserviert()
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
Chart: Fahrzeuge, die am meisten reserviert wurden
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
PDF-Generator
• Generation von PDFs– Tabellen• Fahrzeug• Reservierungen• Mitarbeiter
– Statistiken• Top 5 gefahrene Kilometer• Reservierte Fahrzeuge
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
PDF-Generator
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
PDF-Generator
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
PDF-Generator
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
PDF-Generator
• Programmierung– PDFGenerator.java• Erstellt PDF
– ExportPDFFrame.java (GUI)• Ruft Jtables auf
– Jtables-Klassen und Statistik-Klassen • Rufen PDFGenerator auf
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.view.ExportPDFFrame.java
ActionListener exp = new ActionListener() { @Override public void actionPerformed( ActionEvent e ) { if(FahrzeugeIsActive()) { MainGUI.getInstance().getTable_2().createPDF(); }
if(ReservierungenIsActive()){ MainGUI.getInstance().getTable_3().createPDF(); } if(MitarbeiterIsActive()) { MainGUI.getInstance().getTable_4().createPDF(); }
if(TopFuenfIsActive()) { erstelleMitarbeiterKMPDF(); }
if(ReservierteFahrzeugeIsActive()) { erstelleFahrzeugeReserviertPDF(); }
if(AlleIsActive()) { MainGUI.getInstance().getTable_2().createPDF(); MainGUI.getInstance().getTable_3().createPDF(); erstelleMitarbeiterKMPDF(); erstelleFahrzeugeReserviertPDF();
} }};
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.view.ExportPDFFrame.java
public void erstelleFahrzeugeReserviertPDF() { FahrzeugReserviert reservierteFahrzeuge; reservierteFahrzeuge = new FahrzeugReserviert("Vergleich", "Fahrzeuge, die am meisten reserviert wurden"); reservierteFahrzeuge.pack(); RefineryUtilities.centerFrameOnScreen(reservierteFahrzeuge); reservierteFahrzeuge.setVisible(false); reservierteFahrzeuge.createPDF(); }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.statisticview.FahrzeugReserviert.java
public void createPDF() { PDFGenerator gen = new PDFGenerator(); PDFGenerator.writeChartToPDF(getChart(), 585, 312,
"Reservierte Fahrzeuge.pdf"); }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
package com.hsulm.wf5.fleetmanagement.pdfgeneration.PDFGenerator.java
public static void writeChartToPDF(JFreeChart chart, int width, int height, String fileName) { PdfWriter writer = null; Document document = new Document(PageSize.A4.rotate(), 20, 15, 15, 15); try {
writer = PdfWriter.getInstance(document, new FileOutputStream(fileName)); document.open(); BufferedImage bufferedImage = chart.createBufferedImage(width, height); Image image = Image.getInstance(writer, bufferedImage, 1.0f); document.add(image);
document.close(); writer.close(); Runtime.getRuntime().exec("rundll32 url.dll,FileProtocolHandler " + fileName); } catch (Exception e) { e.printStackTrace(); } } }
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013
PHP
Benny Brand | Paul Fuchs | Gui Ro Kong | Boris Oechsle | Elizaveta Olar | Thomas Oppel | Matthias Schmitt | Markus Schönfeld
Wintersemester 2012/2013 | Projekt zur Wirtschaftsinformatik | 17.01.2013