GUI hinzugefügt
parent
d7e7731e5b
commit
a1b87b7ac8
|
@ -2,10 +2,12 @@
|
||||||
<Firmenstammdaten>
|
<Firmenstammdaten>
|
||||||
<Firmenname>Denis</Firmenname>
|
<Firmenname>Denis</Firmenname>
|
||||||
<Inhaber>Denis</Inhaber>
|
<Inhaber>Denis</Inhaber>
|
||||||
<Strasse>Musterweg 1</Strasse>
|
<Adresse>
|
||||||
<PLZ>83636</PLZ>
|
<Strasse>Musterweg 1</Strasse>
|
||||||
<Stadt>Mannheim</Stadt>
|
<PLZ>83636</PLZ>
|
||||||
<Land>Deutschland</Land>
|
<Stadt>Mannheim</Stadt>
|
||||||
|
<Land>Deutschland</Land>
|
||||||
|
</Adresse>
|
||||||
<Telefon>026373344</Telefon>
|
<Telefon>026373344</Telefon>
|
||||||
<Mobilnummer>02237353353</Mobilnummer>
|
<Mobilnummer>02237353353</Mobilnummer>
|
||||||
<Telefax>03736376363533</Telefax>
|
<Telefax>03736376363533</Telefax>
|
||||||
|
|
|
@ -41,7 +41,7 @@ public class ArtikelController {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Methode zur Generierung einer neuen, eindeutigen Artikelnummer
|
// Methode zur Generierung einer neuen, eindeutigen Artikelnummer
|
||||||
private int generiereNeueArtikelnummer() {
|
public int generiereNeueArtikelnummer() {
|
||||||
int neueArtikelnummer = 1;
|
int neueArtikelnummer = 1;
|
||||||
while (artikelnummerExistiert(neueArtikelnummer)) {
|
while (artikelnummerExistiert(neueArtikelnummer)) {
|
||||||
neueArtikelnummer++;
|
neueArtikelnummer++;
|
||||||
|
|
|
@ -42,7 +42,7 @@ public class KundenController {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Methode zur Generierung einer neuen, eindeutigen Kundennummer
|
// Methode zur Generierung einer neuen, eindeutigen Kundennummer
|
||||||
private int generiereNeueKundennummer() {
|
public int generiereNeueKundennummer() {
|
||||||
int neueKundennummer = 1;
|
int neueKundennummer = 1;
|
||||||
while (kundennummerExistiert(neueKundennummer)) {
|
while (kundennummerExistiert(neueKundennummer)) {
|
||||||
neueKundennummer++;
|
neueKundennummer++;
|
||||||
|
|
|
@ -0,0 +1,323 @@
|
||||||
|
package view;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
import javax.swing.*;
|
||||||
|
|
||||||
|
import controller.AuftragsbestaetigungController;
|
||||||
|
import controller.FirmenstammdatenController;
|
||||||
|
import controller.LieferscheinController;
|
||||||
|
import controller.MainController;
|
||||||
|
import controller.RechnungController;
|
||||||
|
import model.Angebot;
|
||||||
|
import model.Artikel;
|
||||||
|
import model.Firmenstammdaten;
|
||||||
|
import model.Kunde;
|
||||||
|
import model.Wertschoepfungskette;
|
||||||
|
import model.Anschrift;
|
||||||
|
|
||||||
|
public class StartUpMenueGUI extends JFrame {
|
||||||
|
private MainController mainController;
|
||||||
|
|
||||||
|
public StartUpMenueGUI(MainController mainController) {
|
||||||
|
this.mainController = mainController;
|
||||||
|
this.setTitle("Kunden- und Artikelverwaltungssystem");
|
||||||
|
this.setSize(600, 400);
|
||||||
|
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
this.initComponents();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void initComponents() {
|
||||||
|
JPanel panel = new JPanel();
|
||||||
|
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
|
||||||
|
|
||||||
|
JButton kundeAnlegenButton = new JButton("Kunde anlegen");
|
||||||
|
kundeAnlegenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
kundeAnlegen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton kundenstammdatenAnsehenButton = new JButton("Kundenstammdaten ansehen");
|
||||||
|
kundenstammdatenAnsehenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
kundenstammdatenAnsehen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton artikelAnlegenButton = new JButton("Artikel anlegen");
|
||||||
|
artikelAnlegenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
artikelAnlegen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton artikelstammdatenAnsehenButton = new JButton("Artikelstammdaten ansehen");
|
||||||
|
artikelstammdatenAnsehenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
artikelstammdatenAnsehen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton angebotErstellenButton = new JButton("Angebot erstellen");
|
||||||
|
angebotErstellenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
angebotErstellen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton wertschoepfungsketteAnsehenButton = new JButton("Angebot/Wertschöpfungskette anzeigen");
|
||||||
|
wertschoepfungsketteAnsehenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
wertschoepfungsketteAnsehen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton programmBeendenButton = new JButton("Programm beenden");
|
||||||
|
programmBeendenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
System.exit(0);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
panel.add(kundeAnlegenButton);
|
||||||
|
panel.add(kundenstammdatenAnsehenButton);
|
||||||
|
panel.add(artikelAnlegenButton);
|
||||||
|
panel.add(artikelstammdatenAnsehenButton);
|
||||||
|
panel.add(angebotErstellenButton);
|
||||||
|
panel.add(wertschoepfungsketteAnsehenButton);
|
||||||
|
panel.add(programmBeendenButton);
|
||||||
|
|
||||||
|
this.add(panel);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void kundeAnlegen() {
|
||||||
|
JTextField nameField = new JTextField(20);
|
||||||
|
JTextField strasseField = new JTextField(20);
|
||||||
|
JTextField plzField = new JTextField(5);
|
||||||
|
JTextField ortField = new JTextField(20);
|
||||||
|
JTextField emailField = new JTextField(20);
|
||||||
|
JTextField telefonnummerField = new JTextField(20);
|
||||||
|
JCheckBox istKleinunternehmerBox = new JCheckBox();
|
||||||
|
JTextField ansprechpartnerField = new JTextField(20);
|
||||||
|
|
||||||
|
JPanel panel = new JPanel(new GridLayout(0, 2));
|
||||||
|
panel.add(new JLabel("Name:"));
|
||||||
|
panel.add(nameField);
|
||||||
|
panel.add(new JLabel("Straße:"));
|
||||||
|
panel.add(strasseField);
|
||||||
|
panel.add(new JLabel("PLZ:"));
|
||||||
|
panel.add(plzField);
|
||||||
|
panel.add(new JLabel("Ort:"));
|
||||||
|
panel.add(ortField);
|
||||||
|
panel.add(new JLabel("Email:"));
|
||||||
|
panel.add(emailField);
|
||||||
|
panel.add(new JLabel("Telefonnummer:"));
|
||||||
|
panel.add(telefonnummerField);
|
||||||
|
panel.add(new JLabel("Ist Kleinunternehmer:"));
|
||||||
|
panel.add(istKleinunternehmerBox);
|
||||||
|
panel.add(new JLabel("Ansprechpartner:"));
|
||||||
|
panel.add(ansprechpartnerField);
|
||||||
|
|
||||||
|
int result = JOptionPane.showConfirmDialog(null, panel, "Kunde anlegen", JOptionPane.OK_CANCEL_OPTION);
|
||||||
|
if (result == JOptionPane.OK_OPTION) {
|
||||||
|
Anschrift anschrift = new Anschrift(strasseField.getText(), plzField.getText(), ortField.getText());
|
||||||
|
Kunde kunde = new Kunde(nameField.getText(), anschrift, emailField.getText(), telefonnummerField.getText(), istKleinunternehmerBox.isSelected(), ansprechpartnerField.getText());
|
||||||
|
|
||||||
|
// // Überprüfen, ob die Kundennummer bereits existiert
|
||||||
|
// while (mainController.getKundenController().leseAusXML(kunde.getKundennummer()) != null) {
|
||||||
|
// kunde.setKundennummer(mainController.getKundenController().generiereNeueKundennummer());
|
||||||
|
// }
|
||||||
|
|
||||||
|
mainController.getKundenController().speichereAlsXML(kunde);
|
||||||
|
JOptionPane.showMessageDialog(this, "Kunde erfolgreich angelegt.", "Erfolg", JOptionPane.INFORMATION_MESSAGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void kundenstammdatenAnsehen() {
|
||||||
|
String kundennummerStr = JOptionPane.showInputDialog("Kundennummer eingeben:");
|
||||||
|
if (kundennummerStr != null) {
|
||||||
|
int kundennummer = Integer.parseInt(kundennummerStr);
|
||||||
|
Kunde kunde = this.mainController.getKundenController().leseAusXML(kundennummer);
|
||||||
|
if (kunde != null) {
|
||||||
|
kunde.anzeigen();
|
||||||
|
} else {
|
||||||
|
JOptionPane.showMessageDialog(this, "Kunde nicht gefunden.", "Fehler", JOptionPane.ERROR_MESSAGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void artikelAnlegen() {
|
||||||
|
JTextField bezeichnungField = new JTextField(20);
|
||||||
|
JTextField einheitField = new JTextField(20);
|
||||||
|
JTextField nettopreisField = new JTextField(20);
|
||||||
|
JTextField mehrwertsteuersatzField = new JTextField(20);
|
||||||
|
|
||||||
|
JPanel panel = new JPanel(new GridLayout(0, 2));
|
||||||
|
panel.add(new JLabel("Bezeichnung:"));
|
||||||
|
panel.add(bezeichnungField);
|
||||||
|
panel.add(new JLabel("Einheit:"));
|
||||||
|
panel.add(einheitField);
|
||||||
|
panel.add(new JLabel("Nettopreis:"));
|
||||||
|
panel.add(nettopreisField);
|
||||||
|
panel.add(new JLabel("Mehrwertsteuersatz:"));
|
||||||
|
panel.add(mehrwertsteuersatzField);
|
||||||
|
|
||||||
|
int result = JOptionPane.showConfirmDialog(null, panel, "Artikel anlegen", JOptionPane.OK_CANCEL_OPTION);
|
||||||
|
if (result == JOptionPane.OK_OPTION) {
|
||||||
|
Artikel artikel = new Artikel(einheitField.getText(), bezeichnungField.getText(), Double.parseDouble(nettopreisField.getText()), Double.parseDouble(mehrwertsteuersatzField.getText()));
|
||||||
|
|
||||||
|
// Überprüfen, ob die Artikelnummer bereits existiert
|
||||||
|
while (mainController.getArtikelController().leseAusXML(artikel.getArtikelnummer()) != null) {
|
||||||
|
artikel.setArtikelnummer(mainController.getArtikelController().generiereNeueArtikelnummer());
|
||||||
|
}
|
||||||
|
|
||||||
|
mainController.getArtikelController().speichereAlsXML(artikel);
|
||||||
|
JOptionPane.showMessageDialog(this, "Artikel erfolgreich angelegt.", "Erfolg", JOptionPane.INFORMATION_MESSAGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void artikelstammdatenAnsehen() {
|
||||||
|
String artikelnummerStr = JOptionPane.showInputDialog("Artikelnummer eingeben:");
|
||||||
|
if (artikelnummerStr != null) {
|
||||||
|
int artikelnummer = Integer.parseInt(artikelnummerStr);
|
||||||
|
Artikel artikel = this.mainController.getArtikelController().leseAusXML(artikelnummer);
|
||||||
|
if (artikel != null) {
|
||||||
|
artikel.anzeigen();
|
||||||
|
} else {
|
||||||
|
JOptionPane.showMessageDialog(this, "Artikel nicht gefunden.", "Fehler", JOptionPane.ERROR_MESSAGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void angebotErstellen() {
|
||||||
|
Angebot angebot = this.mainController.getAngebotController().erstelleAngebot();
|
||||||
|
this.mainController.getWertschoepfungsketteController().erstelleWertschoepfungskette(angebot);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void wertschoepfungsketteAnsehen() {
|
||||||
|
String angebotsnummerStr = JOptionPane.showInputDialog("Angebotsnummer eingeben:");
|
||||||
|
if (angebotsnummerStr != null) {
|
||||||
|
int angebotsnummer = Integer.parseInt(angebotsnummerStr);
|
||||||
|
Wertschoepfungskette wertschoepfungskette = this.mainController.getWertschoepfungsketteController().leseAusXML(angebotsnummer);
|
||||||
|
if (wertschoepfungskette != null) {
|
||||||
|
wertschoepfungskette.zeigeStatus();
|
||||||
|
wertschoepfungsketteDialog(wertschoepfungskette);
|
||||||
|
} else {
|
||||||
|
JOptionPane.showMessageDialog(this, "Angebot nicht gefunden.", "Fehler", JOptionPane.ERROR_MESSAGE);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void wertschoepfungsketteDialog(Wertschoepfungskette wertschoepfungskette) {
|
||||||
|
JFrame frame = new JFrame("Wertschöpfungskette anzeigen");
|
||||||
|
frame.setSize(600, 400);
|
||||||
|
|
||||||
|
JPanel panel = new JPanel();
|
||||||
|
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
|
||||||
|
|
||||||
|
JButton angebotAnzeigenButton = new JButton("Angebot anzeigen");
|
||||||
|
angebotAnzeigenButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
wertschoepfungskette.getAngebot().anzeigen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
JButton auftragsbestaetigungButton;
|
||||||
|
if (wertschoepfungskette.getAuftragsbestaetigung() != null) {
|
||||||
|
auftragsbestaetigungButton = new JButton("Auftragsbestätigung ansehen");
|
||||||
|
auftragsbestaetigungButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
wertschoepfungskette.getAuftragsbestaetigung().anzeigen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
auftragsbestaetigungButton = new JButton("Auftragsbestätigung anlegen");
|
||||||
|
auftragsbestaetigungButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
AuftragsbestaetigungController auftragsbestaetigungController = new AuftragsbestaetigungController();
|
||||||
|
wertschoepfungskette.setAuftragsbestaetigung(auftragsbestaetigungController.erstelleAuftragsbestaetigung(wertschoepfungskette.getAngebot()));
|
||||||
|
mainController.getWertschoepfungsketteController().speichereAlsXML(wertschoepfungskette);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
JButton lieferscheinButton;
|
||||||
|
if (wertschoepfungskette.getLieferschein() != null) {
|
||||||
|
lieferscheinButton = new JButton("Lieferschein ansehen");
|
||||||
|
lieferscheinButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
wertschoepfungskette.getLieferschein().anzeigen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
lieferscheinButton = new JButton("Lieferschein anlegen");
|
||||||
|
lieferscheinButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
LieferscheinController lieferscheinController = new LieferscheinController();
|
||||||
|
FirmenstammdatenController firmenstammdaten = new FirmenstammdatenController();
|
||||||
|
wertschoepfungskette.setLieferschein(lieferscheinController.erstelleLieferschein(wertschoepfungskette.getAngebot(), firmenstammdaten.leseAusXML()));
|
||||||
|
mainController.getWertschoepfungsketteController().speichereAlsXML(wertschoepfungskette);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
JButton rechnungButton;
|
||||||
|
if (wertschoepfungskette.getRechnung() != null) {
|
||||||
|
rechnungButton = new JButton("Rechnung ansehen");
|
||||||
|
rechnungButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
wertschoepfungskette.getRechnung().anzeigen();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
rechnungButton = new JButton("Rechnung anlegen");
|
||||||
|
rechnungButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
RechnungController rechnungController = new RechnungController();
|
||||||
|
FirmenstammdatenController firmenstammdaten = new FirmenstammdatenController();
|
||||||
|
wertschoepfungskette.setRechnung(rechnungController.erstelleRechnung(wertschoepfungskette.getAngebot(), firmenstammdaten.leseAusXML()));
|
||||||
|
mainController.getWertschoepfungsketteController().speichereAlsXML(wertschoepfungskette);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
JButton zurueckButton = new JButton("Zurück zum Hauptmenü");
|
||||||
|
zurueckButton.addActionListener(new ActionListener() {
|
||||||
|
@Override
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
frame.dispose();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
panel.add(angebotAnzeigenButton);
|
||||||
|
panel.add(auftragsbestaetigungButton);
|
||||||
|
panel.add(lieferscheinButton);
|
||||||
|
panel.add(rechnungButton);
|
||||||
|
panel.add(zurueckButton);
|
||||||
|
|
||||||
|
frame.add(panel);
|
||||||
|
frame.setVisible(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
MainController mainController = new MainController();
|
||||||
|
StartUpMenueGUI gui = new StartUpMenueGUI(mainController);
|
||||||
|
gui.setVisible(true);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue