Compare commits

..

6 Commits

4 changed files with 95 additions and 22 deletions

View File

@ -7,9 +7,8 @@
<option value="$PROJECT_DIR$/pom.xml" /> <option value="$PROJECT_DIR$/pom.xml" />
</list> </list>
</option> </option>
<option name="workspaceImportForciblyTurnedOn" value="true" />
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="21" project-jdk-type="JavaSDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_X" default="true" project-jdk-name="21" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" /> <output url="file://$PROJECT_DIR$/out" />
</component> </component>
</project> </project>

View File

@ -11,11 +11,11 @@ public interface IRestAPI {
// region Get // region Get
void get(String controllerName); String get(String controllerName);
void get (String controllerName, int id); String get (String controllerName, int id);
void get (String controllerName, int id, boolean bezahlt); String get (String controllerName, int id, boolean bezahlt);
//endregion //endregion

View File

@ -8,7 +8,7 @@ import java.nio.charset.StandardCharsets;
import Logik.ElternAccount; import Logik.ElternAccount;
import Logik.Kind; import Logik.Kind;
import com.google.gson.Gson; import com.google.gson.*;
/** /**
* noch nicht getestet * noch nicht getestet
@ -32,8 +32,8 @@ public class RestApiClient implements IRestAPI{
RestApiClient client1 = new RestApiClient(); RestApiClient client1 = new RestApiClient();
client1.post("Gericht", "{\"name\" : \"Svens Beine\", \"69.69\", \"beschreibung\" : \"Muss net schmegge, muss wirge\"}");
System.out.println(client1.nextId("Benutzer"));
} }
/** /**
@ -42,7 +42,7 @@ public class RestApiClient implements IRestAPI{
* @param controllerName Name des aufzurufenden Controllers * @param controllerName Name des aufzurufenden Controllers
*/ */
@Override @Override
public void get(String controllerName) { public String get(String controllerName) {
URI apiUri = URI.create(String.format("%s/%s", urlBase, controllerName)); URI apiUri = URI.create(String.format("%s/%s", urlBase, controllerName));
HttpRequest httpRequest = HttpRequest.newBuilder() HttpRequest httpRequest = HttpRequest.newBuilder()
@ -54,13 +54,13 @@ public class RestApiClient implements IRestAPI{
// Send the request and get the response // Send the request and get the response
HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString()); HttpResponse<String> httpResponse = client.send(httpRequest, HttpResponse.BodyHandlers.ofString());
Kind test = gson.fromJson(httpResponse.body(), Kind.class);
// Print the response status code and body // Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode()); System.out.println("Status Code: " + httpResponse.statusCode());
System.out.println("Response Body: " + test.getName()); System.out.println("Response Body: " + httpResponse.body());
return httpResponse.body();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return null;
} }
} }
@ -71,7 +71,7 @@ public class RestApiClient implements IRestAPI{
* @param id Id der Aufzurufenden Zeile * @param id Id der Aufzurufenden Zeile
*/ */
@Override @Override
public void get(String controllerName, int id) { public String get(String controllerName, int id) {
URI apiUri = URI.create(String.format("%s/%s/%s", urlBase, controllerName, id)); URI apiUri = URI.create(String.format("%s/%s/%s", urlBase, controllerName, id));
HttpRequest httpRequest = HttpRequest.newBuilder() HttpRequest httpRequest = HttpRequest.newBuilder()
@ -86,9 +86,12 @@ public class RestApiClient implements IRestAPI{
// Print the response status code and body // Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode() + httpResponse.body()); System.out.println("Status Code: " + httpResponse.statusCode() + httpResponse.body());
return httpResponse.body();
//System.out.println("Response Body: " + test); //System.out.println("Response Body: " + test);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return null;
} }
} }
@ -100,7 +103,7 @@ public class RestApiClient implements IRestAPI{
* @param bezahlt TODO Warum ist das hier? * @param bezahlt TODO Warum ist das hier?
*/ */
@Override @Override
public void get(String controllerName, int id, boolean bezahlt) { public String get(String controllerName, int id, boolean bezahlt) {
URI apiUri = URI.create(String.format("%s/%s?%s&%s", urlBase, controllerName, id, bezahlt)); URI apiUri = URI.create(String.format("%s/%s?%s&%s", urlBase, controllerName, id, bezahlt));
HttpRequest httpRequest = HttpRequest.newBuilder() HttpRequest httpRequest = HttpRequest.newBuilder()
@ -115,8 +118,10 @@ public class RestApiClient implements IRestAPI{
// Print the response status code and body // Print the response status code and body
System.out.println("Status Code: " + httpResponse.statusCode()); System.out.println("Status Code: " + httpResponse.statusCode());
System.out.println("Response Body: " + httpResponse.body()); System.out.println("Response Body: " + httpResponse.body());
return httpResponse.body();
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
return null;
} }
} }
@ -210,4 +215,34 @@ public class RestApiClient implements IRestAPI{
} }
} }
public int nextId(String controllerName){
URI apiUri = URI.create(String.format("%s/%s/nextId", urlBase, controllerName));
HttpRequest httpRequest = HttpRequest.newBuilder()
.uri(apiUri)
.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 jsonArray = jsonElement.getAsJsonArray();
JsonObject json = jsonArray.get(0).getAsJsonObject();
return json.get("auto_increment").getAsInt();
} catch (Exception e) {
e.printStackTrace();
return -1;
}
}
} }

View File

@ -1,11 +1,16 @@
package de.subway_surfers.vpr_app; package de.subway_surfers.vpr_app;
import RestAPISchnittstelle.IRestAPI;
import RestAPISchnittstelle.RestApiClient;
import javafx.event.ActionEvent; import javafx.event.ActionEvent;
import javafx.fxml.FXML; import javafx.fxml.FXML;
import javafx.geometry.Insets; import javafx.geometry.Insets;
import javafx.geometry.Pos;
import javafx.scene.control.Accordion; import javafx.scene.control.Accordion;
import javafx.scene.control.Label;
import javafx.scene.control.ScrollPane; import javafx.scene.control.ScrollPane;
import javafx.scene.control.TitledPane; import javafx.scene.control.TitledPane;
import javafx.scene.layout.VBox;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -28,23 +33,28 @@ public class BestelluebersichtMitarbeiter {
accordion.setStyle("-fx-box-border: transparent;"); accordion.setStyle("-fx-box-border: transparent;");
for (String s : datum) { for (String i : datum) {
TitledPane datumUeberschrift = new TitledPane(s, createGerichtAkkordion()); Accordion gerichtAkkordion = createGerichtAkkordion();
TitledPane datumUeberschrift = new TitledPane(i, gerichtAkkordion);
datumUeberschrift.getStyleClass().add("titledPaneUeberschrift"); datumUeberschrift.getStyleClass().add("titledPaneUeberschrift");
datumUeberschrift.animatedProperty().set(false); datumUeberschrift.animatedProperty().set(false);
datumUeberschrift.setPadding(new Insets(0, 0, 15, 0)); datumUeberschrift.setPadding(new Insets(0, 0, 15, 0));
//TitledPane personen = new TitledPane("Person", createPersonenAccordion());
accordion.getPanes().add(datumUeberschrift); accordion.getPanes().add(datumUeberschrift);
//gerichtAkkordion.getPanes().add(personen);
} }
scrollPane.setHbarPolicy(ScrollPane.ScrollBarPolicy.NEVER); scrollPane.setHbarPolicy(ScrollPane.ScrollBarPolicy.NEVER);
scrollPane.setVbarPolicy(ScrollPane.ScrollBarPolicy.ALWAYS); scrollPane.setVbarPolicy(ScrollPane.ScrollBarPolicy.ALWAYS);
} }
private Accordion createGerichtAkkordion() {
Accordion accordion = new Accordion();
int anzahlGerichtA = 1; int anzahlGerichtA = 1;
public Accordion createGerichtAkkordion() {
Accordion accordion = new Accordion();
int anzahlGerichtB = 15; int anzahlGerichtB = 15;
int anzahlGerichtC = 3; int anzahlGerichtC = 3;
int anzahlGerichtD = 2; int anzahlGerichtD = 2;
@ -71,6 +81,7 @@ public class BestelluebersichtMitarbeiter {
TitledPane tp = new TitledPane(); TitledPane tp = new TitledPane();
tp.setText("GerichtB " + anzahlGerichtB + "-Mal " + preisGerichtB * anzahlGerichtB + ""); tp.setText("GerichtB " + anzahlGerichtB + "-Mal " + preisGerichtB * anzahlGerichtB + "");
accordion.getPanes().addAll(tp); accordion.getPanes().addAll(tp);
} }
if (anzahlGerichtC >= 1) { if (anzahlGerichtC >= 1) {
@ -85,21 +96,49 @@ public class BestelluebersichtMitarbeiter {
accordion.getPanes().addAll(tp); accordion.getPanes().addAll(tp);
} }
if(anzahlNachtischA >= 1){ if (anzahlNachtischA >= 1) {
TitledPane tp = new TitledPane(); TitledPane tp = new TitledPane();
tp.setText("NachtischA " + anzahlNachtischA + "-Mal " + preisNachtischA * anzahlNachtischA + ""); tp.setText("NachtischA " + anzahlNachtischA + "-Mal " + preisNachtischA * anzahlNachtischA + "");
accordion.getPanes().addAll(tp); accordion.getPanes().addAll(tp);
} }
if(anzahlNachtischA >= 1){ if (anzahlNachtischA >= 1) {
TitledPane tp = new TitledPane();
tp.setText("NachtischB " + anzahlNachtischB + "-Mal " + preisNachtischB * anzahlNachtischB + ""); Label label2 = new Label("Hans Schwanz" + " für " + " Anja Arbeitslos");
Label label3 = new Label("Drittes Label");
VBox vbox = new VBox(label2, label3);
vbox.setAlignment(Pos.CENTER_LEFT);
TitledPane tp = new TitledPane("NachtischB " + "-Mal " + preisNachtischB * anzahlGerichtB + "", vbox);
accordion.getPanes().addAll(tp); accordion.getPanes().addAll(tp);
} }
return accordion; return accordion;
} }
/*
public Accordion createPersonenAccordion() {
Accordion accordion1 = new Accordion();
for (int i = 0; i < 10; i++) {
String kind = "Kind";
String elternteil = "Max Heer";
Label label = new Label();
label.setText(elternteil + " für " + kind);
// Erstellen Sie eine TitledPane für jedes Label
TitledPane titledPane = new TitledPane("Kind Informationen", label);
// Fügen Sie die TitledPane zur Accordion hinzu
accordion1.getPanes().add(titledPane);
}
return accordion1;
}
*/
public void onAbmelden(ActionEvent event) { public void onAbmelden(ActionEvent event) {
VerwaltungApplication.abmelden(); VerwaltungApplication.abmelden();
} }