Compare commits
No commits in common. "8b7a611e2a9500e3c6f3664b9613f1594bec92e7" and "f0bd39d3a6b27426d5c537eb99a9bb445094161c" have entirely different histories.
8b7a611e2a
...
f0bd39d3a6
Binary file not shown.
@ -1,10 +1,10 @@
|
|||||||
package Logik;
|
package Logik;
|
||||||
|
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
public class Mahlzeit {
|
public class Mahlzeit {
|
||||||
|
|
||||||
private int id;
|
|
||||||
private String name;
|
private String name;
|
||||||
private float preis;
|
private float preis;
|
||||||
private ArrayList<Zutat> zutaten;
|
private ArrayList<Zutat> zutaten;
|
||||||
@ -17,6 +17,7 @@ public class Mahlzeit {
|
|||||||
zutaten = new ArrayList<>();
|
zutaten = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public String getName() {
|
public String getName() {
|
||||||
return name;
|
return name;
|
||||||
}
|
}
|
||||||
@ -38,6 +39,4 @@ public class Mahlzeit {
|
|||||||
return String.format("Name: %s, Preis: %g, Beschreibung: %s", name, preis, beschreibung);
|
return String.format("Name: %s, Preis: %g, Beschreibung: %s", name, preis, beschreibung);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -17,6 +17,8 @@ import com.google.gson.*;
|
|||||||
import javafx.scene.control.Alert;
|
import javafx.scene.control.Alert;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
* noch nicht getestet
|
||||||
|
* TODO FERTIG MACHEN
|
||||||
* @author Samuel Wolff
|
* @author Samuel Wolff
|
||||||
*/
|
*/
|
||||||
public class RestApiClient implements IRestAPI{
|
public class RestApiClient implements IRestAPI{
|
||||||
@ -51,7 +53,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
* Methode für einen Get-Aufruf. Ruft alle Elemente einer Tabelle auf.
|
* Methode für einen Get-Aufruf. Ruft alle Elemente einer Tabelle auf.
|
||||||
*
|
*
|
||||||
* @param controllerName Name des aufzurufenden Controllers
|
* @param controllerName Name des aufzurufenden Controllers
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String get(String controllerName) {
|
public String get(String controllerName) {
|
||||||
@ -89,7 +90,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
*
|
*
|
||||||
* @param controllerName Name des aufzurufenden Controllers
|
* @param controllerName Name des aufzurufenden Controllers
|
||||||
* @param id Id der Aufzurufenden Zeile
|
* @param id Id der Aufzurufenden Zeile
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String get(String controllerName, int id) {
|
public String get(String controllerName, int id) {
|
||||||
@ -125,14 +125,11 @@ public class RestApiClient implements IRestAPI{
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* --DEPRECATED--
|
|
||||||
* Methode für einen Get-Aufruf. Ruft ein spezielles Element auf.
|
* Methode für einen Get-Aufruf. Ruft ein spezielles Element auf.
|
||||||
*
|
*
|
||||||
* @param controllerName Name des aufzurufenden Controllers
|
* @param controllerName Name des aufzurufenden Controllers
|
||||||
* @param id Id der Aufzurufenden Zeile
|
* @param id Id der Aufzurufenden Zeile
|
||||||
* @param bezahlt TODO Warum ist das hier?
|
* @param bezahlt TODO Warum ist das hier?
|
||||||
* @deprecated
|
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public String get(String controllerName, int id, boolean bezahlt) {
|
public String get(String controllerName, int id, boolean bezahlt) {
|
||||||
@ -165,13 +162,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
|
||||||
* Ein gefilterter Get Aufruf
|
|
||||||
* @param controllerName
|
|
||||||
* @param params
|
|
||||||
* @return
|
|
||||||
* @author Sven Alteköster
|
|
||||||
*/
|
|
||||||
@Override
|
@Override
|
||||||
public String get(String controllerName, String[] params) {
|
public String get(String controllerName, String[] params) {
|
||||||
String ende = "";
|
String ende = "";
|
||||||
@ -216,7 +206,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
* @param controllerName Name des aufzurufenden Controllers.
|
* @param controllerName Name des aufzurufenden Controllers.
|
||||||
* @param id Id des zu änderenden Eintrags.
|
* @param id Id des zu änderenden Eintrags.
|
||||||
* @param jsonData JsonString mit den neuen Daten.
|
* @param jsonData JsonString mit den neuen Daten.
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void put(String controllerName, int id, String jsonData) {
|
public void put(String controllerName, int id, String jsonData) {
|
||||||
@ -253,7 +242,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
*
|
*
|
||||||
* @param controllerName Name des aufzurufenden Controllers.
|
* @param controllerName Name des aufzurufenden Controllers.
|
||||||
* @param jsonData JsonString mit den Daten des Eintrags.
|
* @param jsonData JsonString mit den Daten des Eintrags.
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void post(String controllerName, String jsonData) {
|
public void post(String controllerName, String jsonData) {
|
||||||
@ -291,7 +279,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
*
|
*
|
||||||
* @param controllerName Name des aufzurufenden Controllers
|
* @param controllerName Name des aufzurufenden Controllers
|
||||||
* @param id Id des zu löschenden Eintrags.
|
* @param id Id des zu löschenden Eintrags.
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void delete(String controllerName, int id) {
|
public void delete(String controllerName, int id) {
|
||||||
@ -324,12 +311,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/***
|
|
||||||
* Holt die nöchste Autoinkrement Id für den mitgegebenen Controller aus der Datenbank
|
|
||||||
* @param controllerName
|
|
||||||
* @return
|
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
|
||||||
public int nextId(String controllerName){
|
public int nextId(String controllerName){
|
||||||
URI apiUri = URI.create(String.format("%s/%s/nextId", urlBase, controllerName));
|
URI apiUri = URI.create(String.format("%s/%s/nextId", urlBase, controllerName));
|
||||||
|
|
||||||
@ -372,7 +353,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
*
|
*
|
||||||
* @param credentials Die Anmeldedaten in Json-String form
|
* @param credentials Die Anmeldedaten in Json-String form
|
||||||
* @return True oder false, je nach Erfolg des Anmeldeversuchs
|
* @return True oder false, je nach Erfolg des Anmeldeversuchs
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
public boolean anmeldeVersuch(String credentials){
|
public boolean anmeldeVersuch(String credentials){
|
||||||
|
|
||||||
@ -429,7 +409,6 @@ public class RestApiClient implements IRestAPI{
|
|||||||
*
|
*
|
||||||
* @param datum Das angeforderte Datum in String Form (YYYY-MM-DD)
|
* @param datum Das angeforderte Datum in String Form (YYYY-MM-DD)
|
||||||
* @return Ein Tagesplan Objekt mit allen Gerichten
|
* @return Ein Tagesplan Objekt mit allen Gerichten
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
public Tagesplan getGerichteOnTag(String datum){
|
public Tagesplan getGerichteOnTag(String datum){
|
||||||
|
|
||||||
@ -482,71 +461,4 @@ public class RestApiClient implements IRestAPI{
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Holt die Id des Gerichtes mit dem mitgegebenen Namen an einem mitgegebenen Tag und gibt sie zurück
|
|
||||||
* @param name
|
|
||||||
* @param datum
|
|
||||||
* @return
|
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
|
||||||
public int getGerichtIdOnTag(String name, String datum){
|
|
||||||
|
|
||||||
URI apiUri = URI.create(String.format("%s/Tagesplan/getGerichtIdOnTag?name=%s&datum=%s", urlBase, name, datum));
|
|
||||||
System.out.println(apiUri);
|
|
||||||
HttpRequest httpRequest = HttpRequest.newBuilder()
|
|
||||||
.uri(apiUri)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.GET()
|
|
||||||
.build();
|
|
||||||
|
|
||||||
try {
|
|
||||||
// Send the request and get the response
|
|
||||||
HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
|
|
||||||
|
|
||||||
// Print the response status code and body
|
|
||||||
System.out.println("Status Code: " + httpResponse.statusCode());
|
|
||||||
System.out.println("Response Body: " + httpResponse.body());
|
|
||||||
|
|
||||||
JsonElement jsonElement = JsonParser.parseString(httpResponse.body());
|
|
||||||
|
|
||||||
JsonArray json = jsonElement.getAsJsonArray();
|
|
||||||
|
|
||||||
JsonObject o = json.get(0).getAsJsonObject();
|
|
||||||
|
|
||||||
return o.get("id").getAsInt();
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Löscht ein Gericht mit der mitgebenen Id aus der Datenbank
|
|
||||||
* @param id
|
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
|
||||||
public void deleteGericht(int id){
|
|
||||||
URI apiUri = URI.create(String.format("%s/Tagesplan/%d", urlBase, id));
|
|
||||||
System.out.println(apiUri);
|
|
||||||
HttpRequest httpRequest = HttpRequest.newBuilder()
|
|
||||||
.uri(apiUri)
|
|
||||||
.header("Content-Type", "application/json")
|
|
||||||
.DELETE()
|
|
||||||
.build();
|
|
||||||
|
|
||||||
try {
|
|
||||||
// Send the request and get the response
|
|
||||||
HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
|
|
||||||
|
|
||||||
// Print the response status code and body
|
|
||||||
System.out.println("Status Code: " + httpResponse.statusCode());
|
|
||||||
System.out.println("Delete Gericht: Response Body: " + httpResponse.body());
|
|
||||||
|
|
||||||
|
|
||||||
} catch (Exception e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -35,10 +35,6 @@ public class AccounterstellungMitarbeiter {
|
|||||||
|
|
||||||
private ArrayList<Kind> kinder;
|
private ArrayList<Kind> kinder;
|
||||||
|
|
||||||
/**
|
|
||||||
* Initialisiert die Accounterstellungsmaske
|
|
||||||
* @author Sven Alteköster
|
|
||||||
*/
|
|
||||||
public void initialize() {
|
public void initialize() {
|
||||||
//Die Radiobuttons zum auswählen eines Accountypes werden einer ToggleGroup hinzugefügt
|
//Die Radiobuttons zum auswählen eines Accountypes werden einer ToggleGroup hinzugefügt
|
||||||
accountTyp = new ToggleGroup();
|
accountTyp = new ToggleGroup();
|
||||||
@ -47,7 +43,6 @@ public class AccounterstellungMitarbeiter {
|
|||||||
|
|
||||||
einmalpw.setText(einmalPwGenerieren());
|
einmalpw.setText(einmalPwGenerieren());
|
||||||
|
|
||||||
//kinder wird initialisiert
|
|
||||||
kinder = new ArrayList<>();
|
kinder = new ArrayList<>();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -67,7 +62,7 @@ public class AccounterstellungMitarbeiter {
|
|||||||
* @author Sven Alteköster
|
* @author Sven Alteköster
|
||||||
*/
|
*/
|
||||||
public void onAbmelden(ActionEvent actionEvent) {
|
public void onAbmelden(ActionEvent actionEvent) {
|
||||||
VerwaltungApplication.abmelden();
|
//VerwaltungApplication.abmelden();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -195,11 +190,7 @@ public class AccounterstellungMitarbeiter {
|
|||||||
*/
|
*/
|
||||||
public void onSpeichern(ActionEvent actionEvent) {
|
public void onSpeichern(ActionEvent actionEvent) {
|
||||||
if (eingabenGueltig()) {
|
if (eingabenGueltig()) {
|
||||||
|
//Zeigt generiert ein Einmalpasswort und zeigt es an
|
||||||
//speichert das aktuelle Passwort zwischen
|
|
||||||
String passwort = einmalpw.getText();
|
|
||||||
|
|
||||||
//generiert ein neues Einmalpasswort und zeigt es an
|
|
||||||
einmalpw.setText(einmalPwGenerieren());
|
einmalpw.setText(einmalPwGenerieren());
|
||||||
|
|
||||||
//Schnittstelle zur RestAPI
|
//Schnittstelle zur RestAPI
|
||||||
@ -222,14 +213,14 @@ public class AccounterstellungMitarbeiter {
|
|||||||
Account neuer;
|
Account neuer;
|
||||||
//Handelt es sich um einen Elternaccount, werden alle Eingegebenen Kinder erstellt.
|
//Handelt es sich um einen Elternaccount, werden alle Eingegebenen Kinder erstellt.
|
||||||
if (typEltern.isSelected()) {
|
if (typEltern.isSelected()) {
|
||||||
neuer = new ElternAccount(passwort, accountname.getText(), email.getText());
|
neuer = new ElternAccount(String.format("%d",einmalpw.getText().hashCode()), accountname.getText(), email.getText());
|
||||||
//Kinder dem neuen Account hinzufügen
|
//Kinder dem neuen Account hinzufügen
|
||||||
for (Kind k : kinder) {
|
for (Kind k : kinder) {
|
||||||
((ElternAccount)neuer).getKinder().add(k);
|
((ElternAccount)neuer).getKinder().add(k);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (typMitarbeiter.isSelected()) {
|
else if (typMitarbeiter.isSelected()) {
|
||||||
neuer = new MitarbeiterAccount(passwort, accountname.getText(), email.getText());
|
neuer = new MitarbeiterAccount(String.format("%d",einmalpw.getText().hashCode()), accountname.getText(), email.getText());
|
||||||
}
|
}
|
||||||
//Ist kein Radio Button ausgewählt, wird hier abgebrochen
|
//Ist kein Radio Button ausgewählt, wird hier abgebrochen
|
||||||
else {
|
else {
|
||||||
|
@ -140,7 +140,7 @@ public class BestelluebersichtMitarbeiter {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
public void onAbmelden(ActionEvent event) {
|
public void onAbmelden(ActionEvent event) {
|
||||||
VerwaltungApplication.abmelden();
|
//VerwaltungApplication.abmelden();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void onZurueck(ActionEvent actionEvent) {
|
public void onZurueck(ActionEvent actionEvent) {
|
||||||
|
@ -3,9 +3,6 @@ package de.subway_surfers.vpr_app;
|
|||||||
import Logik.Mahlzeit;
|
import Logik.Mahlzeit;
|
||||||
import Logik.Tagesplan;
|
import Logik.Tagesplan;
|
||||||
import RestAPISchnittstelle.RestApiClient;
|
import RestAPISchnittstelle.RestApiClient;
|
||||||
import com.google.gson.Gson;
|
|
||||||
import com.google.gson.JsonElement;
|
|
||||||
import com.google.gson.JsonObject;
|
|
||||||
import javafx.beans.value.ChangeListener;
|
import javafx.beans.value.ChangeListener;
|
||||||
import javafx.beans.value.ObservableValue;
|
import javafx.beans.value.ObservableValue;
|
||||||
import javafx.collections.FXCollections;
|
import javafx.collections.FXCollections;
|
||||||
@ -26,7 +23,6 @@ import javafx.stage.Stage;
|
|||||||
|
|
||||||
import java.net.http.WebSocket;
|
import java.net.http.WebSocket;
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.time.LocalDate;
|
|
||||||
import java.time.LocalTime;
|
import java.time.LocalTime;
|
||||||
import java.time.format.DateTimeFormatter;
|
import java.time.format.DateTimeFormatter;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@ -45,47 +41,52 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
|
|
||||||
private String date;
|
private String date;
|
||||||
|
|
||||||
/**
|
private String day;
|
||||||
* Initialize des Controllers.
|
|
||||||
* Setzt das Datum, holt die Gerichte ein und initialisiert die responsive grid.
|
private String month;
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
private String year;
|
||||||
|
|
||||||
|
private ChangeListener listener;
|
||||||
|
|
||||||
public void initialize(){
|
public void initialize(){
|
||||||
|
|
||||||
date = LocalDate.now().toString();
|
/*
|
||||||
|
(obs,oldValue,newValue) -> {
|
||||||
|
final int zeile = 1;
|
||||||
|
for (Node n : tagesplan.getChildren()){
|
||||||
|
if(n instanceof Control && GridPane.getRowIndex(n) == zeile){
|
||||||
|
((Control) n).setPrefHeight(newValue.floatValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
dateLabel.setText(date);
|
DateFormat dateFormat = DateFormat.getDateInstance();
|
||||||
|
date = dateFormat.format(new Date());
|
||||||
|
date = date.replace('.', '-');
|
||||||
|
day = date.split("-")[0];
|
||||||
|
month = date.split("-")[1];
|
||||||
|
year = date.split("-")[2];
|
||||||
|
date = String.format("%s-%s-%s", year, month, day);
|
||||||
|
|
||||||
|
dateLabel.setText(String.format("%s.%s.%s", day, month, year));
|
||||||
|
|
||||||
initGrid();
|
initGrid();
|
||||||
initGerichte();
|
initGerichte();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Methode beim klicken auf den Anmeldebutton. Meldet den User ab
|
|
||||||
* @param actionEvent
|
|
||||||
* @author Max Heer
|
|
||||||
*/
|
|
||||||
public void onAbmelden(ActionEvent actionEvent) {
|
public void onAbmelden(ActionEvent actionEvent) {
|
||||||
VerwaltungApplication.sceneWechseln("login-view.fxml");
|
VerwaltungApplication.sceneWechseln("login-view.fxml");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Methode beim klicken auf den Filter Button. Öffnet den Filter Dialog.
|
|
||||||
* @param actionEvent
|
|
||||||
* @author Sven Alteköster
|
|
||||||
*/
|
|
||||||
public void onFilter(ActionEvent actionEvent) {
|
public void onFilter(ActionEvent actionEvent) {
|
||||||
Stage stage = new Stage();
|
Stage stage = new Stage();
|
||||||
VerwaltungApplication.sceneWechseln(stage, 450, 400, "inhaltsstoffe_filtern-view.fxml");
|
VerwaltungApplication.sceneWechseln(stage, 450, 400, "inhaltsstoffe_filtern-view.fxml");
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Methode beim klicken auf den hinzufügen Button. Öffnet den Dialog zum hinzufügen eines Gerichtes zum aktuellen Tag.
|
|
||||||
* @param actionEvent
|
|
||||||
* @author Sven Alteköster
|
|
||||||
*/
|
|
||||||
public void onHinzufuegen(ActionEvent actionEvent) {
|
public void onHinzufuegen(ActionEvent actionEvent) {
|
||||||
Stage gerichterstellung = new Stage();
|
Stage gerichterstellung = new Stage();
|
||||||
|
|
||||||
@ -98,11 +99,6 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
gerichterstellung.minHeightProperty().set(600);
|
gerichterstellung.minHeightProperty().set(600);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Methode beim klicken auf den Zurück Button. Kehrt zum Startbildschirm zurück.
|
|
||||||
* @param actionEvent
|
|
||||||
* @author Max Heer
|
|
||||||
*/
|
|
||||||
public void onZurueck(ActionEvent actionEvent) {
|
public void onZurueck(ActionEvent actionEvent) {
|
||||||
VerwaltungApplication.sceneWechseln("hauptmenue_mitarbeiter-view.fxml");
|
VerwaltungApplication.sceneWechseln("hauptmenue_mitarbeiter-view.fxml");
|
||||||
}
|
}
|
||||||
@ -110,16 +106,15 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
/**
|
/**
|
||||||
* Methode bei Klick auf Pfeil links, ändert das Datum und gibt neue Gerichte auf die GUI aus.
|
* Methode bei Klick auf Pfeil links, ändert das Datum und gibt neue Gerichte auf die GUI aus.
|
||||||
* @param actionEvent
|
* @param actionEvent
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
public void pfeilLinks(ActionEvent actionEvent) {
|
public void pfeilLinks(ActionEvent actionEvent) {
|
||||||
|
|
||||||
tagesplan.getChildren().clear();
|
tagesplan.getChildren().clear();
|
||||||
|
|
||||||
LocalDate datum = LocalDate.parse(date);
|
day = String.valueOf(Integer.parseInt(day)-1);
|
||||||
datum = datum.minusDays(1);
|
date = String.format("%s-%s-%s", year, month, day);
|
||||||
date = datum.toString();
|
|
||||||
dateLabel.setText(date);
|
dateLabel.setText(String.format("%s.%s.%s", day, month, year));
|
||||||
|
|
||||||
initGerichte();
|
initGerichte();
|
||||||
|
|
||||||
@ -128,16 +123,15 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
/**
|
/**
|
||||||
* Methode bei Klick auf Pfeil rechts, ändert das Datum und gibt neue Gerichte auf die GUI aus.
|
* Methode bei Klick auf Pfeil rechts, ändert das Datum und gibt neue Gerichte auf die GUI aus.
|
||||||
* @param actionEvent
|
* @param actionEvent
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
public void pfeilRechts(ActionEvent actionEvent) {
|
public void pfeilRechts(ActionEvent actionEvent) {
|
||||||
|
|
||||||
tagesplan.getChildren().clear();
|
tagesplan.getChildren().clear();
|
||||||
|
|
||||||
LocalDate datum = LocalDate.parse(date);
|
day = String.valueOf(Integer.parseInt(day)+1);
|
||||||
datum = datum.plusDays(1);
|
date = String.format("%s-%s-%s", year, month, day);
|
||||||
date = datum.toString();
|
|
||||||
dateLabel.setText(date);
|
dateLabel.setText(String.format("%s.%s.%s", day, month, year));
|
||||||
|
|
||||||
initGerichte();
|
initGerichte();
|
||||||
|
|
||||||
@ -145,12 +139,10 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* Initialisiert alle Gerichte des aktuellen Datums auf der Seite.
|
* Initialisiert alle Gerichte des aktuellen Datums auf der Seite.
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
*/
|
||||||
private void initGerichte(){
|
private void initGerichte(){
|
||||||
|
|
||||||
tagesplan.getStyleClass().clear();
|
tagesplan.getStyleClass().clear();
|
||||||
tagesplan.getChildren().clear();
|
|
||||||
|
|
||||||
t = new RestApiClient().getGerichteOnTag(date);
|
t = new RestApiClient().getGerichteOnTag(date);
|
||||||
|
|
||||||
@ -191,10 +183,6 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
tagesplan.getStyleClass().add("essensuebersicht_gridlines");
|
tagesplan.getStyleClass().add("essensuebersicht_gridlines");
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Initialisiert das responsive grid.
|
|
||||||
* @author Max Heer, Sven Alteköster
|
|
||||||
*/
|
|
||||||
public void initGrid(){
|
public void initGrid(){
|
||||||
for (int i = 0; i < tagesplan.getColumnCount(); i++) {
|
for (int i = 0; i < tagesplan.getColumnCount(); i++) {
|
||||||
ColumnConstraints cc = new ColumnConstraints();
|
ColumnConstraints cc = new ColumnConstraints();
|
||||||
@ -215,25 +203,10 @@ public class EssensverwaltungMitarbeiterView {
|
|||||||
VerwaltungApplication.responsiveBreiteGrid(tagesplan);
|
VerwaltungApplication.responsiveBreiteGrid(tagesplan);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Methode beim klicken auf den Löschen Button eines Tagesplan Elementes
|
|
||||||
* @param a
|
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
|
||||||
private void loeschenButtonKlick(ActionEvent a){
|
private void loeschenButtonKlick(ActionEvent a){
|
||||||
Button btn = (Button) a.getSource();
|
Button btn = (Button) a.getSource();
|
||||||
int col = GridPane.getColumnIndex(btn);
|
int col = GridPane.getColumnIndex(btn);
|
||||||
Mahlzeit m = t.getGerichte().get(col);
|
|
||||||
|
|
||||||
RestApiClient cl = new RestApiClient();
|
|
||||||
|
|
||||||
int id = cl.getGerichtIdOnTag(t.getGerichte().get(col < 0 ? 0 : col).getName().replace(' ', '_'), date);
|
|
||||||
|
|
||||||
t.getGerichte().remove(col);
|
t.getGerichte().remove(col);
|
||||||
|
|
||||||
System.out.println("Die Id lautet: " + id + col);
|
|
||||||
|
|
||||||
cl.delete("GibtsAm", id);
|
|
||||||
initGerichte();
|
initGerichte();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -40,11 +40,6 @@ public class GerichterstellungMitarbeiterView {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Fügt den Eingebenen Inhaltsstoff aus dem zugehörigen Textfeld als Button hinzu
|
|
||||||
* @param actionEvent
|
|
||||||
* @author Sven Alteköster
|
|
||||||
*/
|
|
||||||
public void onButtonInhaltsstoffeClick(ActionEvent actionEvent) {
|
public void onButtonInhaltsstoffeClick(ActionEvent actionEvent) {
|
||||||
String text = eingabeInhaltsstoffe.getText();
|
String text = eingabeInhaltsstoffe.getText();
|
||||||
if (!text.equals("")) {
|
if (!text.equals("")) {
|
||||||
@ -56,7 +51,6 @@ public class GerichterstellungMitarbeiterView {
|
|||||||
|
|
||||||
Zutat neue = new Zutat(text);
|
Zutat neue = new Zutat(text);
|
||||||
zutaten.add(neue);
|
zutaten.add(neue);
|
||||||
//Wird der Inhaltsstoff angeklickt, wird er entfernt
|
|
||||||
neuerInhalt.setOnAction(e -> {
|
neuerInhalt.setOnAction(e -> {
|
||||||
((HBox) neuerInhalt.getParent()).getChildren().remove(neuerInhalt);
|
((HBox) neuerInhalt.getParent()).getChildren().remove(neuerInhalt);
|
||||||
zutaten.remove(neue);
|
zutaten.remove(neue);
|
||||||
|
@ -9,7 +9,6 @@ import javafx.scene.layout.GridPane;
|
|||||||
import javafx.scene.text.TextAlignment;
|
import javafx.scene.text.TextAlignment;
|
||||||
|
|
||||||
import java.text.DateFormat;
|
import java.text.DateFormat;
|
||||||
import java.time.LocalDate;
|
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
public class HauptmenueMitarbeiterView {
|
public class HauptmenueMitarbeiterView {
|
||||||
@ -35,8 +34,14 @@ public class HauptmenueMitarbeiterView {
|
|||||||
*/
|
*/
|
||||||
public void wochenuebersichtFuellen(){
|
public void wochenuebersichtFuellen(){
|
||||||
String dateanzeige;
|
String dateanzeige;
|
||||||
date = LocalDate.now().toString();
|
DateFormat dateFormat = DateFormat.getDateInstance();
|
||||||
dateanzeige = date;
|
date = dateFormat.format(new Date());
|
||||||
|
date = date.replace('.', '-');
|
||||||
|
day = date.split("-")[0];
|
||||||
|
month = date.split("-")[1];
|
||||||
|
year = date.split("-")[2];
|
||||||
|
date = String.format("%s-%s-%s", year, month, day);
|
||||||
|
dateanzeige = String.format("%s.%s.%s",day,month,year);
|
||||||
Tagesplan t = new RestApiClient().getGerichteOnTag(date);
|
Tagesplan t = new RestApiClient().getGerichteOnTag(date);
|
||||||
for(int i=0;i<5;i++){
|
for(int i=0;i<5;i++){
|
||||||
Label tag = new Label();
|
Label tag = new Label();
|
||||||
@ -50,19 +55,13 @@ public class HauptmenueMitarbeiterView {
|
|||||||
name.setPrefHeight(75);
|
name.setPrefHeight(75);
|
||||||
name.setTextAlignment(TextAlignment.CENTER);
|
name.setTextAlignment(TextAlignment.CENTER);
|
||||||
}
|
}
|
||||||
LocalDate datum = LocalDate.parse(date);
|
day = String.valueOf(Integer.parseInt(day)+1);
|
||||||
datum = datum.plusDays(1);
|
date = String.format("%s-%s-%s", year, month, day);
|
||||||
date = datum.toString();
|
dateanzeige = String.format("%s.%s.%s",day,month,year);
|
||||||
dateanzeige = date;
|
|
||||||
t = new RestApiClient().getGerichteOnTag(date);
|
t = new RestApiClient().getGerichteOnTag(date);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Methode beim klicken auf den Anmeldebutton. Meldet den User ab
|
|
||||||
* @param actionEvent
|
|
||||||
* @author Samuel Wolff
|
|
||||||
*/
|
|
||||||
public void onAbmelden(ActionEvent actionEvent) {
|
public void onAbmelden(ActionEvent actionEvent) {
|
||||||
VerwaltungApplication.abmelden();
|
VerwaltungApplication.abmelden();
|
||||||
}
|
}
|
||||||
|
@ -31,27 +31,25 @@ public class InhaltsstoffeFilternController {
|
|||||||
|
|
||||||
private ArrayList<Zutat> zutaten;
|
private ArrayList<Zutat> zutaten;
|
||||||
|
|
||||||
/**
|
|
||||||
* Initialisert sie InhaltsstoffeFiltern View
|
|
||||||
* @author Sven Alteköster
|
|
||||||
*/
|
|
||||||
public void initialize(){
|
public void initialize(){
|
||||||
//mehrere Inhaltsstoffe können ausgewählt werden
|
|
||||||
zutatListView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
|
zutatListView.getSelectionModel().setSelectionMode(SelectionMode.MULTIPLE);
|
||||||
|
|
||||||
//Befüllen der ListView mit allen existierenden Inhaltsstoffen
|
|
||||||
RestApiClient api = new RestApiClient();
|
RestApiClient api = new RestApiClient();
|
||||||
String json = api.get("Inhaltsstoff");
|
String json = api.get("Inhaltsstoff");
|
||||||
|
|
||||||
zutaten = new ArrayList<>();
|
zutaten = new ArrayList<>();
|
||||||
|
|
||||||
Gson gson = new Gson();
|
Gson gson = new Gson();
|
||||||
|
|
||||||
JsonElement je = JsonParser.parseString(json);
|
JsonElement je = JsonParser.parseString(json);
|
||||||
JsonArray ja = je.getAsJsonArray();
|
JsonArray ja = je.getAsJsonArray();
|
||||||
|
|
||||||
for (JsonElement e : ja) {
|
for (JsonElement e : ja) {
|
||||||
JsonObject jo = e.getAsJsonObject();
|
JsonObject jo = e.getAsJsonObject();
|
||||||
zutaten.add(gson.fromJson(jo, Zutat.class));
|
zutaten.add(gson.fromJson(jo, Zutat.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
zutatListView.setItems(FXCollections.observableArrayList(zutaten));
|
zutatListView.setItems(FXCollections.observableArrayList(zutaten));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ public class VerwaltungApplication extends Application {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void start(Stage stage) throws IOException {
|
public void start(Stage stage) throws IOException {
|
||||||
FXMLLoader fxmlLoader = new FXMLLoader(VerwaltungApplication.class.getResource("login-view.fxml"));
|
FXMLLoader fxmlLoader = new FXMLLoader(VerwaltungApplication.class.getResource("gerichterstellung_mitarbeiter-view.fxml"));
|
||||||
Scene scene = new Scene(fxmlLoader.load());
|
Scene scene = new Scene(fxmlLoader.load());
|
||||||
|
|
||||||
stage.setWidth(960);
|
stage.setWidth(960);
|
||||||
@ -48,6 +48,7 @@ public class VerwaltungApplication extends Application {
|
|||||||
* Die Scene auf der aktuellen Stage wird durch die in der fxml-Datei definierte Scene ausgetauscht.
|
* Die Scene auf der aktuellen Stage wird durch die in der fxml-Datei definierte Scene ausgetauscht.
|
||||||
*
|
*
|
||||||
* Geschrieben: Sven Alteköster
|
* Geschrieben: Sven Alteköster
|
||||||
|
* Getestet:
|
||||||
*
|
*
|
||||||
* @param fxml name der zu ladenden fxml Datei.
|
* @param fxml name der zu ladenden fxml Datei.
|
||||||
*/
|
*/
|
||||||
@ -83,7 +84,9 @@ public class VerwaltungApplication extends Application {
|
|||||||
/**
|
/**
|
||||||
* in einem neuen Fenster wird die in der fxml-Datei definierte Scene gesetzt.
|
* in einem neuen Fenster wird die in der fxml-Datei definierte Scene gesetzt.
|
||||||
* Die geladene Scene wird <b><u>nicht</u></b> zu der neuen Hauptstage.
|
* Die geladene Scene wird <b><u>nicht</u></b> zu der neuen Hauptstage.
|
||||||
|
*
|
||||||
* Geschrieben: Sven Alteköster
|
* Geschrieben: Sven Alteköster
|
||||||
|
* Getestet:
|
||||||
*
|
*
|
||||||
* @param neue Stage auf der die Scene gesetzt werden soll
|
* @param neue Stage auf der die Scene gesetzt werden soll
|
||||||
* @param width breite des neuen Fensters
|
* @param width breite des neuen Fensters
|
||||||
@ -118,6 +121,7 @@ public class VerwaltungApplication extends Application {
|
|||||||
* Methode zum automatischen vergrößern und verkleinern von Grids
|
* Methode zum automatischen vergrößern und verkleinern von Grids
|
||||||
*
|
*
|
||||||
* Geschrieben: Max Heer, Sven Alteköster
|
* Geschrieben: Max Heer, Sven Alteköster
|
||||||
|
* Getestet
|
||||||
*
|
*
|
||||||
* @param grid das responsiv sein soll
|
* @param grid das responsiv sein soll
|
||||||
*/
|
*/
|
||||||
|
@ -6,8 +6,6 @@
|
|||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.*?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.layout.*?>
|
||||||
|
|
||||||
<!-- Erstellt von Sven Alteköster -->
|
|
||||||
|
|
||||||
<BorderPane xmlns="http://javafx.com/javafx"
|
<BorderPane xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="de.subway_surfers.vpr_app.AccounterstellungMitarbeiter"
|
fx:controller="de.subway_surfers.vpr_app.AccounterstellungMitarbeiter"
|
||||||
|
@ -52,6 +52,9 @@
|
|||||||
</center>
|
</center>
|
||||||
<bottom>
|
<bottom>
|
||||||
<BorderPane styleClass="button-untenrechts">
|
<BorderPane styleClass="button-untenrechts">
|
||||||
|
<right>
|
||||||
|
<Button text="Bestätigen" defaultButton="true" styleClass=".button"/>
|
||||||
|
</right>
|
||||||
</BorderPane>
|
</BorderPane>
|
||||||
</bottom>
|
</bottom>
|
||||||
</BorderPane>
|
</BorderPane>
|
||||||
|
@ -6,8 +6,6 @@
|
|||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.*?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.layout.*?>
|
||||||
|
|
||||||
<!-- Erstellt von Sven Alteköster -->
|
|
||||||
|
|
||||||
<?import javafx.geometry.Insets?>
|
<?import javafx.geometry.Insets?>
|
||||||
<BorderPane xmlns="http://javafx.com/javafx"
|
<BorderPane xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
|
@ -7,8 +7,6 @@
|
|||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.*?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.layout.*?>
|
||||||
|
|
||||||
<!-- Erstellt von Sven Alteköster -->
|
|
||||||
|
|
||||||
<BorderPane xmlns="http://javafx.com/javafx"
|
<BorderPane xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="de.subway_surfers.vpr_app.HauptmenueElternController"
|
fx:controller="de.subway_surfers.vpr_app.HauptmenueElternController"
|
||||||
|
@ -25,6 +25,8 @@
|
|||||||
<VBox styleClass="hauptmenue_buttons_links">
|
<VBox styleClass="hauptmenue_buttons_links">
|
||||||
<Button text="Speiseplan" onAction="#onSpeiseplanClick"/>
|
<Button text="Speiseplan" onAction="#onSpeiseplanClick"/>
|
||||||
<Button text="Alle Bestellungen anzeigen" onAction="#onBestellungenAnzeigen"/>
|
<Button text="Alle Bestellungen anzeigen" onAction="#onBestellungenAnzeigen"/>
|
||||||
|
<Button text="Rechnungen herunterladen"/>
|
||||||
|
<Button text="Daten importieren/Exportieren"/>
|
||||||
<Button text="Account anlegen" onAction="#onAccountAnlegenClick"/>
|
<Button text="Account anlegen" onAction="#onAccountAnlegenClick"/>
|
||||||
</VBox>
|
</VBox>
|
||||||
</left>
|
</left>
|
||||||
|
@ -6,8 +6,6 @@
|
|||||||
<?import javafx.scene.control.*?>
|
<?import javafx.scene.control.*?>
|
||||||
<?import javafx.scene.layout.*?>
|
<?import javafx.scene.layout.*?>
|
||||||
|
|
||||||
<!-- Erstellt von Sven Alteköster -->
|
|
||||||
|
|
||||||
<BorderPane xmlns="http://javafx.com/javafx"
|
<BorderPane xmlns="http://javafx.com/javafx"
|
||||||
xmlns:fx="http://javafx.com/fxml"
|
xmlns:fx="http://javafx.com/fxml"
|
||||||
fx:controller="de.subway_surfers.vpr_app.VerwaltungController"
|
fx:controller="de.subway_surfers.vpr_app.VerwaltungController"
|
||||||
|
Loading…
Reference in New Issue
Block a user