Compare commits
	
		
			2 Commits
		
	
	
		
			f0bd39d3a6
			...
			samu_maske
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| bc4926aca8 | |||
| 7acd24e285 | 
@@ -3,6 +3,8 @@ package Logik;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
 | 
			
		||||
public class Mahlzeit {
 | 
			
		||||
 | 
			
		||||
	private int id;
 | 
			
		||||
	private String name;
 | 
			
		||||
	private float            preis;
 | 
			
		||||
	private ArrayList<Zutat> zutaten;
 | 
			
		||||
@@ -15,6 +17,22 @@ public class Mahlzeit {
 | 
			
		||||
		zutaten = new ArrayList<>();
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public Mahlzeit (int id, String name, float preis, String beschreibung) {
 | 
			
		||||
		this.id = id;
 | 
			
		||||
		this.name = name;
 | 
			
		||||
		this.preis = preis;
 | 
			
		||||
		this.beschreibung = beschreibung;
 | 
			
		||||
		zutaten = new ArrayList<>();
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public int getId() {
 | 
			
		||||
		return id;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public void setId(int id) {
 | 
			
		||||
		this.id = id;
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	public String getName() {
 | 
			
		||||
		return name;
 | 
			
		||||
	}
 | 
			
		||||
@@ -36,4 +54,6 @@ public class Mahlzeit {
 | 
			
		||||
		return String.format("Name: %s, Preis: %g, Beschreibung: %s", name, preis, beschreibung);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -371,4 +371,59 @@ public class RestApiClient implements IRestAPI{
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	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;
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	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();
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
@@ -3,6 +3,9 @@ package de.subway_surfers.vpr_app;
 | 
			
		||||
import Logik.Mahlzeit;
 | 
			
		||||
import Logik.Tagesplan;
 | 
			
		||||
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.ObservableValue;
 | 
			
		||||
import javafx.collections.FXCollections;
 | 
			
		||||
@@ -23,6 +26,7 @@ import javafx.stage.Stage;
 | 
			
		||||
 | 
			
		||||
import java.net.http.WebSocket;
 | 
			
		||||
import java.text.DateFormat;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.time.LocalTime;
 | 
			
		||||
import java.time.format.DateTimeFormatter;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
@@ -41,52 +45,47 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
 | 
			
		||||
	private String date;
 | 
			
		||||
 | 
			
		||||
	private String day;
 | 
			
		||||
 | 
			
		||||
	private String month;
 | 
			
		||||
 | 
			
		||||
	private String year;
 | 
			
		||||
 | 
			
		||||
	private ChangeListener listener;
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Initialize des Controllers.
 | 
			
		||||
	 * Setzt das Datum, holt die Gerichte ein und initialisiert die responsive grid.
 | 
			
		||||
	 * @author Samuel Wolff
 | 
			
		||||
	 */
 | 
			
		||||
	public void initialize(){
 | 
			
		||||
 | 
			
		||||
/*
 | 
			
		||||
		(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());
 | 
			
		||||
				}
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
		*/
 | 
			
		||||
		date = LocalDate.now().toString();
 | 
			
		||||
 | 
			
		||||
		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));
 | 
			
		||||
		dateLabel.setText(date);
 | 
			
		||||
 | 
			
		||||
		initGrid();
 | 
			
		||||
		initGerichte();
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Methode beim klicken auf den Anmeldebutton. Meldet den User ab
 | 
			
		||||
	 * @param actionEvent
 | 
			
		||||
	 * @author Max Heer
 | 
			
		||||
	 */
 | 
			
		||||
	public void onAbmelden(ActionEvent actionEvent) {
 | 
			
		||||
		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) {
 | 
			
		||||
		Stage stage = new Stage();
 | 
			
		||||
		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) {
 | 
			
		||||
		Stage gerichterstellung = new Stage();
 | 
			
		||||
 | 
			
		||||
@@ -99,6 +98,11 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
		gerichterstellung.minHeightProperty().set(530);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Methode beim klicken auf den Zurück Button. Kehrt zum Startbildschirm zurück.
 | 
			
		||||
	 * @param actionEvent
 | 
			
		||||
	 * @author Max Heer
 | 
			
		||||
	 */
 | 
			
		||||
	public void onZurueck(ActionEvent actionEvent) {
 | 
			
		||||
		VerwaltungApplication.sceneWechseln("hauptmenue_mitarbeiter-view.fxml");
 | 
			
		||||
	}
 | 
			
		||||
@@ -106,15 +110,16 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
	/**
 | 
			
		||||
	 * Methode bei Klick auf Pfeil links, ändert das Datum und gibt neue Gerichte auf die GUI aus.
 | 
			
		||||
	 * @param actionEvent
 | 
			
		||||
	 * @author Samuel Wolff
 | 
			
		||||
	 */
 | 
			
		||||
	public void pfeilLinks(ActionEvent actionEvent) {
 | 
			
		||||
 | 
			
		||||
		tagesplan.getChildren().clear();
 | 
			
		||||
 | 
			
		||||
		day = String.valueOf(Integer.parseInt(day)-1);
 | 
			
		||||
		date = String.format("%s-%s-%s", year, month, day);
 | 
			
		||||
 | 
			
		||||
		dateLabel.setText(String.format("%s.%s.%s", day, month, year));
 | 
			
		||||
		LocalDate datum = LocalDate.parse(date);
 | 
			
		||||
		datum = datum.minusDays(1);
 | 
			
		||||
		date = datum.toString();
 | 
			
		||||
		dateLabel.setText(date);
 | 
			
		||||
 | 
			
		||||
		initGerichte();
 | 
			
		||||
 | 
			
		||||
@@ -123,15 +128,16 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
	/**
 | 
			
		||||
	 * Methode bei Klick auf Pfeil rechts, ändert das Datum und gibt neue Gerichte auf die GUI aus.
 | 
			
		||||
	 * @param actionEvent
 | 
			
		||||
	 * @author Samuel Wolff
 | 
			
		||||
	 */
 | 
			
		||||
	public void pfeilRechts(ActionEvent actionEvent) {
 | 
			
		||||
 | 
			
		||||
		tagesplan.getChildren().clear();
 | 
			
		||||
 | 
			
		||||
		day = String.valueOf(Integer.parseInt(day)+1);
 | 
			
		||||
		date = String.format("%s-%s-%s", year, month, day);
 | 
			
		||||
 | 
			
		||||
		dateLabel.setText(String.format("%s.%s.%s", day, month, year));
 | 
			
		||||
		LocalDate datum = LocalDate.parse(date);
 | 
			
		||||
		datum = datum.plusDays(1);
 | 
			
		||||
		date = datum.toString();
 | 
			
		||||
		dateLabel.setText(date);
 | 
			
		||||
 | 
			
		||||
		initGerichte();
 | 
			
		||||
 | 
			
		||||
@@ -139,10 +145,12 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Initialisiert alle Gerichte des aktuellen Datums auf der Seite.
 | 
			
		||||
	 * @author Samuel Wolff
 | 
			
		||||
	 */
 | 
			
		||||
	private void initGerichte(){
 | 
			
		||||
 | 
			
		||||
		tagesplan.getStyleClass().clear();
 | 
			
		||||
		tagesplan.getChildren().clear();
 | 
			
		||||
 | 
			
		||||
		t = new RestApiClient().getGerichteOnTag(date);
 | 
			
		||||
 | 
			
		||||
@@ -183,6 +191,9 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
		tagesplan.getStyleClass().add("essensuebersicht_gridlines");
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Initialisiert das responsive grid.
 | 
			
		||||
	 */
 | 
			
		||||
	public void initGrid(){
 | 
			
		||||
		for (int i = 0; i < tagesplan.getColumnCount(); i++) {
 | 
			
		||||
			ColumnConstraints cc = new ColumnConstraints();
 | 
			
		||||
@@ -203,10 +214,24 @@ public class EssensverwaltungMitarbeiterView {
 | 
			
		||||
		VerwaltungApplication.responsiveBreiteGrid(tagesplan);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	/**
 | 
			
		||||
	 * Methode beim klicken auf den Löschen Button eines Tagesplan Elementes
 | 
			
		||||
	 * @param a
 | 
			
		||||
	 */
 | 
			
		||||
	private void loeschenButtonKlick(ActionEvent a){
 | 
			
		||||
		Button btn = (Button) a.getSource();
 | 
			
		||||
		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);
 | 
			
		||||
 | 
			
		||||
		System.out.println("Die Id lautet: " + id + col);
 | 
			
		||||
 | 
			
		||||
		cl.delete("GibtsAm", id);
 | 
			
		||||
		initGerichte();
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -9,6 +9,7 @@ import javafx.scene.layout.GridPane;
 | 
			
		||||
import javafx.scene.text.TextAlignment;
 | 
			
		||||
 | 
			
		||||
import java.text.DateFormat;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.Date;
 | 
			
		||||
 | 
			
		||||
public class HauptmenueMitarbeiterView {
 | 
			
		||||
@@ -34,14 +35,8 @@ public class HauptmenueMitarbeiterView {
 | 
			
		||||
     */
 | 
			
		||||
    public void wochenuebersichtFuellen(){
 | 
			
		||||
        String dateanzeige;
 | 
			
		||||
        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);
 | 
			
		||||
        dateanzeige = String.format("%s.%s.%s",day,month,year);
 | 
			
		||||
        date = LocalDate.now().toString();
 | 
			
		||||
        dateanzeige = date;
 | 
			
		||||
        Tagesplan t = new RestApiClient().getGerichteOnTag(date);
 | 
			
		||||
        for(int i=0;i<5;i++){
 | 
			
		||||
            Label tag = new Label();
 | 
			
		||||
@@ -55,13 +50,19 @@ public class HauptmenueMitarbeiterView {
 | 
			
		||||
                name.setPrefHeight(75);
 | 
			
		||||
                name.setTextAlignment(TextAlignment.CENTER);
 | 
			
		||||
            }
 | 
			
		||||
            day = String.valueOf(Integer.parseInt(day)+1);
 | 
			
		||||
            date = String.format("%s-%s-%s", year, month, day);
 | 
			
		||||
            dateanzeige = String.format("%s.%s.%s",day,month,year);
 | 
			
		||||
            LocalDate datum = LocalDate.parse(date);
 | 
			
		||||
            datum = datum.plusDays(1);
 | 
			
		||||
            date = datum.toString();
 | 
			
		||||
            dateanzeige = 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) {
 | 
			
		||||
        VerwaltungApplication.abmelden();
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -52,9 +52,6 @@
 | 
			
		||||
    </center>
 | 
			
		||||
    <bottom>
 | 
			
		||||
        <BorderPane styleClass="button-untenrechts">
 | 
			
		||||
            <right>
 | 
			
		||||
                <Button text="Bestätigen" defaultButton="true" styleClass=".button"/>
 | 
			
		||||
            </right>
 | 
			
		||||
        </BorderPane>
 | 
			
		||||
    </bottom>
 | 
			
		||||
</BorderPane>
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user