diff --git a/SkyTeam/DataBase.cs b/SkyTeam/DataBase.cs
new file mode 100644
index 0000000..38ffee8
--- /dev/null
+++ b/SkyTeam/DataBase.cs
@@ -0,0 +1,33 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using MySql.Data.MySqlClient;
+
+namespace SkyTeam
+{
+ internal class DataBase
+ {
+ private string mySqlConnectionString = "Server=mysql.pb.bib.de;uid=pbt3h24akh;pwd=Dd3dwQgPeNxW;database=pbt3h24akh_SkyTeam;";
+
+ public bool TestConnection()
+ {
+ try
+ {
+ using (var conn = new MySqlConnection(mySqlConnectionString))
+ {
+ conn.Open(); // versuchen, die Verbindung zu öffnen
+ Console.WriteLine("Verbindung erfolgreich!");
+ return true;
+ }
+ }
+ catch (MySqlException ex)
+ {
+ Console.WriteLine("Verbindungsfehler: " + ex.Message);
+ return false;
+ }
+ }
+
+ }
+}
diff --git a/SkyTeam/MainWindow.xaml.cs b/SkyTeam/MainWindow.xaml.cs
index e3e2155..3a14059 100644
--- a/SkyTeam/MainWindow.xaml.cs
+++ b/SkyTeam/MainWindow.xaml.cs
@@ -19,6 +19,18 @@ namespace SkyTeam
public MainWindow()
{
InitializeComponent();
+ TestDatabaseConnection();
+ }
+
+ private void TestDatabaseConnection()
+ {
+ DataBase db = new DataBase();
+ bool success = db.TestConnection();
+
+ if (success)
+ MessageBox.Show("Datenbank ist verfügbar!", "Erfolg", MessageBoxButton.OK, MessageBoxImage.Information);
+ else
+ MessageBox.Show("Probleme mit der Verbindung.", "Fehler", MessageBoxButton.OK, MessageBoxImage.Error);
}
}
}
\ No newline at end of file
diff --git a/SkyTeam/Mitarbeiter.cs b/SkyTeam/Mitarbeiter.cs
index f4396fe..88e6288 100644
--- a/SkyTeam/Mitarbeiter.cs
+++ b/SkyTeam/Mitarbeiter.cs
@@ -12,7 +12,7 @@ namespace SkyTeam
private string vorname { get; set; }
private string nachname { get; set; }
private string position { get; set; }
- private int alter { get; set; }
+ private int mitarbeiterAlter { get; set; }
private float arbeitsstundenProWoche { get; set; }
private Boolean istVerfuegbar { get; set; }
}
diff --git a/SkyTeam/SkyTeam.csproj b/SkyTeam/SkyTeam.csproj
index e3e33e3..694c014 100644
--- a/SkyTeam/SkyTeam.csproj
+++ b/SkyTeam/SkyTeam.csproj
@@ -1,11 +1,15 @@
- WinExe
+ Exe
net8.0-windows
enable
enable
true
+
+
+
+
diff --git a/SkyTeam/SkyTeam.sql b/SkyTeam/SkyTeam.sql
new file mode 100644
index 0000000..21f5b3c
--- /dev/null
+++ b/SkyTeam/SkyTeam.sql
@@ -0,0 +1,75 @@
+SET FOREIGN_KEY_CHECKS = 0;
+
+DROP TABLE IF EXISTS fluege;
+DROP TABLE IF EXISTS piloten;
+DROP TABLE IF EXISTS flugzeuge;
+DROP TABLE IF EXISTS mitarbeiter;
+DROP TABLE IF EXISTS users;
+
+SET FOREIGN_KEY_CHECKS = 1;
+
+CREATE TABLE users (
+ Id INT AUTO_INCREMENT PRIMARY KEY,
+ Vorname VARCHAR(100) NOT NULL,
+ Nachname VARCHAR(100) NOT NULL,
+ Email VARCHAR(100) NOT NULL,
+ PasswortHash VARCHAR(255) NOT NULL,
+ Rolle VARCHAR(50) NOT NULL,
+ Stadt VARCHAR(100),
+ Anrede VARCHAR(20),
+ Geburtsdatum DATE,
+ CreatedAt DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
+);
+
+CREATE TABLE flugzeuge (
+ Id INT AUTO_INCREMENT PRIMARY KEY,
+ Modell VARCHAR(100) NOT NULL,
+ Plaetze INT NOT NULL,
+ Lagerflaeche FLOAT NOT NULL,
+ Gewicht FLOAT NOT NULL,
+ Kerosinverbrauch FLOAT NOT NULL,
+ Stundengeschwindigkeit FLOAT NOT NULL,
+ Stundenstand FLOAT NOT NULL,
+ Herstellungsdatum DATE NOT NULL,
+ IstDefekt BOOLEAN NOT NULL
+);
+
+CREATE TABLE piloten (
+ Id INT AUTO_INCREMENT PRIMARY KEY,
+ Vorname VARCHAR(100) NOT NULL,
+ Nachname VARCHAR(100) NOT NULL,
+ Flugerfahrung FLOAT NOT NULL,
+ Groesse FLOAT NOT NULL,
+ Bewertung FLOAT NOT NULL,
+ Pilotalter DATE NOT NULL,
+ Gender VARCHAR(10),
+ IstVerfuegbar BOOLEAN NOT NULL,
+ Sprachen TEXT
+);
+
+CREATE TABLE fluege (
+ Id INT AUTO_INCREMENT PRIMARY KEY,
+ Abflugort VARCHAR(100) NOT NULL,
+ Zielort VARCHAR(100) NOT NULL,
+ Abflugdatum DATETIME NOT NULL,
+ Ankunftsdatum DATETIME NOT NULL,
+ Flugnummer VARCHAR(20) NOT NULL,
+ Preis DECIMAL(10,2) NOT NULL,
+ Created DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
+ FlugzeugId INT NOT NULL,
+ PilotId INT NOT NULL,
+ ErstelltVon INT NOT NULL,
+ FOREIGN KEY (FlugzeugId) REFERENCES flugzeuge(Id),
+ FOREIGN KEY (PilotId) REFERENCES piloten(Id),
+ FOREIGN KEY (ErstelltVon) REFERENCES users(Id)
+);
+
+CREATE TABLE mitarbeiter (
+ Id INT AUTO_INCREMENT PRIMARY KEY,
+ Vorname VARCHAR(100) NOT NULL,
+ Nachname VARCHAR(100) NOT NULL,
+ Position VARCHAR(100) NOT NULL,
+ MitarbeiterAlter INT NOT NULL,
+ ArbeitsstundenProWoche FLOAT NOT NULL,
+ IstVerfuegbar BOOLEAN NOT NULL
+);
diff --git a/SkyTeam/User.cs b/SkyTeam/User.cs
index 2f806e4..47db151 100644
--- a/SkyTeam/User.cs
+++ b/SkyTeam/User.cs
@@ -12,10 +12,10 @@ namespace SkyTeam
private string vorname { get; set; }
private string nachname { get; set; }
private string email { get; set; }
- private string passwort { get; set; }
+ private string passwortHash { get; set; }
+ private string rolle { get; set; }
private string stadt { get; set; }
private DateTime geburtsdatum { get; set; }
private string anrede { get; set; }
- private DateTime created { get; set; }
}
}
diff --git a/SkyTeam/flugzeug.cs b/SkyTeam/flugzeug.cs
index 930a66f..3c06e13 100644
--- a/SkyTeam/flugzeug.cs
+++ b/SkyTeam/flugzeug.cs
@@ -13,11 +13,10 @@ namespace SkyTeam
private DateTime herstellungsdatum { get; set; }
private int plaetze { get; set; }
private float lagerflache { get; set; }
- private float weicht { get; set; }
+ private float gewicht { get; set; }
private float kerosineverbrauch { get; set; }
private float stundengeschwindigkeit { get; set; }
private float stundenstand { get; set; }
- private Boolean istVerfuegbar { get; set; }
private Boolean istDefekt { get; set; }
}
}
diff --git a/SkyTeam/pilot.cs b/SkyTeam/pilot.cs
index 9ab079a..1d4bad3 100644
--- a/SkyTeam/pilot.cs
+++ b/SkyTeam/pilot.cs
@@ -15,7 +15,7 @@ namespace SkyTeam
private float groesse { get; set; }
private float bewertung { get; set; }
private List sprachen { get; set; }
- private DateTime alter { get; set; }
+ private DateTime pilotalter { get; set; }
private string gender { get; set; }
private Boolean istVerfuegbar { get; set; }
}
diff --git a/image001.tif b/image001.tif
new file mode 100644
index 0000000..5ada38a
Binary files /dev/null and b/image001.tif differ