Compare commits
	
		
			2 Commits
		
	
	
		
			3ac92ea955
			...
			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