Compare commits
12 Commits
svenNeuesG
...
456e55a66e
Author | SHA1 | Date | |
---|---|---|---|
456e55a66e | |||
bf9c99672d | |||
db26bca5a3 | |||
71c2c5d005 | |||
4a97fee7e7 | |||
ea8c810f13 | |||
a34ae15b88 | |||
73416b60e0 | |||
b77e42914f | |||
33ebabe083 | |||
7eea5b2a50 | |||
e8d29f851c |
5
pom.xml
5
pom.xml
@@ -38,6 +38,11 @@
|
||||
<version>${junit.version}</version>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.google.code.gson</groupId>
|
||||
<artifactId>gson</artifactId>
|
||||
<version>2.10.1</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@@ -5,9 +5,12 @@ import java.util.ArrayList;
|
||||
public class Kind {
|
||||
|
||||
// region Felder
|
||||
|
||||
private transient int id;
|
||||
private String name;
|
||||
private String vorname;
|
||||
private int id;
|
||||
private int bid;
|
||||
|
||||
// TODO Zutat implementieren!
|
||||
// private ArrayList<Zutat> filter;
|
||||
// endregion
|
||||
@@ -37,6 +40,14 @@ public class Kind {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public int getBid() {
|
||||
return bid;
|
||||
}
|
||||
|
||||
public void setBid(int bid) {
|
||||
this.bid = bid;
|
||||
}
|
||||
|
||||
// TODO Zutat implementieren!
|
||||
/*
|
||||
public ArrayList<Zutat> getFilter() {
|
||||
@@ -50,10 +61,12 @@ public class Kind {
|
||||
// endregion
|
||||
|
||||
// region Konstruktoren
|
||||
public Kind(String name, String vorname) {
|
||||
public Kind(String name, String vorname, int bid) {
|
||||
this.name = name;
|
||||
this.vorname = vorname;
|
||||
this.bid = bid;
|
||||
}
|
||||
|
||||
// endregion
|
||||
|
||||
}
|
||||
|
40
src/main/java/RestAPISchnittstelle/IRestAPI.java
Normal file
40
src/main/java/RestAPISchnittstelle/IRestAPI.java
Normal file
@@ -0,0 +1,40 @@
|
||||
/**
|
||||
* @author Samuel Wolff
|
||||
* noch nicht getestet
|
||||
*
|
||||
* TODO Json hinzufügen
|
||||
*/
|
||||
|
||||
package RestAPISchnittstelle;
|
||||
|
||||
public interface IRestAPI {
|
||||
|
||||
// region Get
|
||||
|
||||
void get(String controllerName);
|
||||
|
||||
void get (String controllerName, int id);
|
||||
|
||||
void get (String controllerName, int id, boolean bezahlt);
|
||||
|
||||
//endregion
|
||||
|
||||
// region put
|
||||
|
||||
void put (String controllerName, int id, String jsonData);
|
||||
|
||||
// endregion
|
||||
|
||||
// region POST
|
||||
|
||||
void post (String controllerName, String jsonData);
|
||||
|
||||
// endregion
|
||||
|
||||
// region DELETE
|
||||
|
||||
void delete(String controllerName, int id);
|
||||
|
||||
// endregion
|
||||
|
||||
}
|
188
src/main/java/RestAPISchnittstelle/RestApiClient.java
Normal file
188
src/main/java/RestAPISchnittstelle/RestApiClient.java
Normal file
@@ -0,0 +1,188 @@
|
||||
package RestAPISchnittstelle;
|
||||
|
||||
import java.net.URI;
|
||||
import java.net.http.HttpClient;
|
||||
import java.net.http.HttpRequest;
|
||||
import java.net.http.HttpResponse;
|
||||
import java.nio.charset.StandardCharsets;
|
||||
import java.nio.file.WatchEvent;
|
||||
|
||||
import Logik.Kind;
|
||||
import com.google.gson.Gson;
|
||||
|
||||
/**
|
||||
* noch nicht getestet
|
||||
* TODO FERTIG MACHEN
|
||||
* @author Samuel Wolff
|
||||
*/
|
||||
public class RestApiClient implements IRestAPI{
|
||||
|
||||
private final String urlBase = "https://pbg2h22awo.web.pb.bib.de/VPR_Schnittstelle/VPR_Schnittstelle/restAPI.php";
|
||||
|
||||
private final HttpClient client;
|
||||
|
||||
private final Gson gson;
|
||||
|
||||
public RestApiClient(){
|
||||
client = HttpClient.newHttpClient();
|
||||
gson = new Gson();
|
||||
}
|
||||
|
||||
|
||||
|
||||
public static void main(String[] args){
|
||||
|
||||
Kind kind = new Kind("Klein", "Kevin", 2);
|
||||
|
||||
String json = new Gson().toJson(kind);
|
||||
|
||||
new RestApiClient().post("Kind", json);
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @param controllerName
|
||||
*/
|
||||
@Override
|
||||
public void get(String controllerName) {
|
||||
URI apiUri = URI.create(String.format("%s/%s", 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());
|
||||
|
||||
Kind test = gson.fromJson(httpResponse.body(), Kind.class);
|
||||
|
||||
// Print the response status code and body
|
||||
System.out.println("Status Code: " + httpResponse.statusCode());
|
||||
System.out.println("Response Body: " + test.getName());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param controllerName
|
||||
* @param id
|
||||
*/
|
||||
@Override
|
||||
public void get(String controllerName, int id) {
|
||||
URI apiUri = URI.create(String.format("%s/%s/%s", urlBase, controllerName, id));
|
||||
|
||||
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());
|
||||
|
||||
Kind[] test = gson.fromJson(httpResponse.body(), Kind[].class);
|
||||
|
||||
// Print the response status code and body
|
||||
System.out.println("Status Code: " + httpResponse.statusCode());
|
||||
for(Kind i : test){
|
||||
System.out.println(i.getVorname());
|
||||
}
|
||||
//System.out.println("Response Body: " + test);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param controllerName
|
||||
* @param id
|
||||
* @param bezahlt
|
||||
*/
|
||||
@Override
|
||||
public void get(String controllerName, int id, boolean bezahlt) {
|
||||
URI apiUri = URI.create(String.format("%s/%s?%s&%s", urlBase, controllerName, id, bezahlt));
|
||||
|
||||
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());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param controllerName
|
||||
* @param id
|
||||
*/
|
||||
@Override
|
||||
public void put(String controllerName, int id, String jsonData) {
|
||||
|
||||
URI apiUri = URI.create(String.format("%s/%s/%s", urlBase,controllerName, id));
|
||||
|
||||
HttpRequest httpRequest = HttpRequest.newBuilder()
|
||||
.uri(apiUri)
|
||||
.header("Content-Type", "application/json")
|
||||
.PUT(HttpRequest.BodyPublishers.ofString(jsonData, StandardCharsets.UTF_8))
|
||||
.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());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param controllerName
|
||||
*/
|
||||
@Override
|
||||
public void post(String controllerName, String jsonData) {
|
||||
URI apiUri = URI.create(String.format("%s/%s", urlBase,controllerName));
|
||||
|
||||
System.out.println(apiUri);
|
||||
|
||||
HttpRequest httpRequest = HttpRequest.newBuilder()
|
||||
.uri(apiUri)
|
||||
.header("Content-Type", "application/json")
|
||||
.POST(HttpRequest.BodyPublishers.ofString(jsonData, StandardCharsets.UTF_8))
|
||||
.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());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @param controllerName
|
||||
* @param id
|
||||
*/
|
||||
@Override
|
||||
public void delete(String controllerName, int id) {
|
||||
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,32 @@
|
||||
/**
|
||||
* @author Samuel Wolff
|
||||
* noch nicht getestet
|
||||
*/
|
||||
// TODO Alle Zutaten einlesen und Listview mit zutatListView Objekten füllen
|
||||
|
||||
package de.subway_surfers.vpr_app;
|
||||
|
||||
import Logik.Kind;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.CheckBox;
|
||||
import javafx.scene.control.ListView;
|
||||
|
||||
public class InhaltsstoffeFilternController {
|
||||
|
||||
private @FXML ListView<zutatListViewController> zutatListView;
|
||||
|
||||
private @FXML CheckBox speichernCheckBox;
|
||||
|
||||
private @FXML Button abbrechenButton;
|
||||
|
||||
private @FXML Button fortfahrenButton;
|
||||
|
||||
public void initialize(){
|
||||
|
||||
// hier ListView füllen
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,32 @@
|
||||
/**
|
||||
* @author Samuel Wolff
|
||||
* noch nicht getestet
|
||||
*/
|
||||
// Noch nicht getestet
|
||||
|
||||
package de.subway_surfers.vpr_app;
|
||||
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.Button;
|
||||
import javafx.scene.control.RadioButton;
|
||||
import javafx.scene.control.ToggleGroup;
|
||||
|
||||
public class RechnungFilterViewController {
|
||||
|
||||
private @FXML RadioButton alle;
|
||||
private @FXML RadioButton nichtBezahlt;
|
||||
private @FXML RadioButton bezahlt;
|
||||
|
||||
private ToggleGroup rButtons;
|
||||
|
||||
private @FXML Button abbrechenButton;
|
||||
private @FXML Button fortfahrenButton;
|
||||
|
||||
public void initialize(){
|
||||
rButtons = new ToggleGroup();
|
||||
alle.setToggleGroup(rButtons);
|
||||
nichtBezahlt.setToggleGroup(rButtons);
|
||||
bezahlt.setToggleGroup(rButtons);
|
||||
}
|
||||
|
||||
}
|
@@ -0,0 +1,32 @@
|
||||
// Programmiert von Samuel Wolff
|
||||
/**
|
||||
* @author Samuel Wolff
|
||||
* noch nicht getestet
|
||||
*/
|
||||
// TODO Sobald Zutat-Klasse implementiert ist Kommentare entfernen
|
||||
|
||||
package de.subway_surfers.vpr_app;
|
||||
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.control.CheckBox;
|
||||
import javafx.scene.control.Label;
|
||||
|
||||
public class zutatListViewController {
|
||||
|
||||
//private Zutat zutat;
|
||||
|
||||
private @FXML CheckBox isChecked;
|
||||
|
||||
private @FXML Label nameLabel;
|
||||
|
||||
/*public zutatListViewController(Zutat zutat){
|
||||
this.zutat = zutat;
|
||||
}*/
|
||||
|
||||
|
||||
public void initialize(){
|
||||
nameLabel.setText("ZutatA");
|
||||
}
|
||||
|
||||
|
||||
}
|
@@ -1,8 +1,11 @@
|
||||
module de.subway_surfers.vpr_app {
|
||||
requires javafx.controls;
|
||||
requires javafx.fxml;
|
||||
requires java.net.http;
|
||||
requires com.google.gson;
|
||||
|
||||
|
||||
opens de.subway_surfers.vpr_app to javafx.fxml;
|
||||
opens de.subway_surfers.vpr_app to javafx.fxml, com.google.gson;
|
||||
opens Logik to com.google.gson;
|
||||
exports de.subway_surfers.vpr_app;
|
||||
}
|
@@ -0,0 +1,21 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!-- @author Samuel Wolff
|
||||
Noch nicht getestet
|
||||
TODO Style einbauen
|
||||
-->
|
||||
|
||||
<?import javafx.scene.control.*?>
|
||||
<?import javafx.scene.layout.*?>
|
||||
|
||||
<VBox prefHeight="400.0" prefWidth="600.0" stylesheets="@layout.css" xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1" fx:controller="de.subway_surfers.vpr_app.InhaltsstoffeFilternController">
|
||||
|
||||
<Label text="Nach Inhaltsstoffen filtern" />
|
||||
<ListView fx:id="zutatListView" />
|
||||
|
||||
<HBox prefHeight="128.0" prefWidth="600.0" styleClass="bottomHbox">
|
||||
<CheckBox fx:id="speichernCheckBox" text="Auswahl für KindA speichern " />
|
||||
<Button fx:id="abbrechenButton" cancelButton="true" text="Abbrechen" />
|
||||
<Button fx:id="fortfahrenButton" defaultButton="true" text="Fortfahren" />
|
||||
</HBox>
|
||||
</VBox>
|
@@ -0,0 +1,30 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
@author Samuel Wolff
|
||||
Noch nicht getestet
|
||||
TODO Style einbinden
|
||||
-->
|
||||
|
||||
<?import java.lang.*?>
|
||||
<?import java.util.*?>
|
||||
<?import javafx.scene.*?>
|
||||
<?import javafx.scene.control.*?>
|
||||
<?import javafx.scene.layout.*?>
|
||||
|
||||
<VBox xmlns="http://javafx.com/javafx"
|
||||
xmlns:fx="http://javafx.com/fxml"
|
||||
fx:controller="de.subway_surfers.vpr_app.RechnungFilterViewController"
|
||||
prefHeight="400.0" prefWidth="600.0"
|
||||
stylesheets="@layout.css">
|
||||
|
||||
<RadioButton fx:id="alle" text="Alle anzeigen" />
|
||||
<RadioButton fx:id="nichtBezahlt" text="Alle nicht bezahlten Anzeigen" />
|
||||
<RadioButton fx:id="bezahlt" text="Alle bezahlten Anzeigen" />
|
||||
|
||||
<HBox>
|
||||
<Button fx:id="abbrechenButton" text="Abbruch" />
|
||||
<Button fx:id="fortfahrenButton" text="Fortfahren" />
|
||||
</HBox>
|
||||
|
||||
</VBox>
|
@@ -0,0 +1,24 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<!--
|
||||
@author Samuel Wolff
|
||||
Noch nicht getestet
|
||||
TODO Style einbauen
|
||||
-->
|
||||
|
||||
<?import java.lang.*?>
|
||||
<?import java.util.*?>
|
||||
<?import javafx.scene.*?>
|
||||
<?import javafx.scene.control.*?>
|
||||
<?import javafx.scene.layout.*?>
|
||||
|
||||
<HBox xmlns="http://javafx.com/javafx"
|
||||
xmlns:fx="http://javafx.com/fxml"
|
||||
fx:controller="de.subway_surfers.vpr_app.zutatListViewController"
|
||||
prefHeight="400.0" prefWidth="600.0"
|
||||
stylesheets="@layout.css">
|
||||
|
||||
<CheckBox fx:id="isChecked" />
|
||||
<Label fx:id="nameLabel" text="placeholder" />
|
||||
|
||||
</HBox>
|
Reference in New Issue
Block a user