diff --git a/.gitignore b/.gitignore index ed6d1d2..07ee89c 100644 --- a/.gitignore +++ b/.gitignore @@ -221,7 +221,7 @@ rcf/ AppPackages/ BundleArtifacts/ Package.StoreAssociation.xml -_pkginfo.txt +*.txt *.appx *.appxbundle *.appxupload diff --git a/SkyTeam/SkyTeam.csproj b/SkyTeam/SkyTeam.csproj index 8d7c06a..db3b342 100644 --- a/SkyTeam/SkyTeam.csproj +++ b/SkyTeam/SkyTeam.csproj @@ -6,8 +6,13 @@ enable enable true + icon.ico + + + + diff --git a/SkyTeam/Tabellen.sql b/SkyTeam/Tabellen.sql new file mode 100644 index 0000000..2c84a36 --- /dev/null +++ b/SkyTeam/Tabellen.sql @@ -0,0 +1,315 @@ +-- User Email elhaddouryyounes@gmail.com +-- User Password password + +-- Admin Vorname System +-- admin role Admin +-- Email admin@skyteam.com +-- password admin + + +-- phpMyAdmin SQL Dump +-- version 5.2.2 +-- https://www.phpmyadmin.net/ +-- +-- Host: localhost +-- Erstellungszeit: 04. Mrz 2026 um 10:02 +-- Server-Version: 11.8.3-MariaDB-0+deb13u1 from Debian +-- PHP-Version: 8.4.16 + +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; +START TRANSACTION; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; + +-- +-- Datenbank: `pbt3h24akh_SkyTeam` +-- + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `buchungen` +-- + +CREATE TABLE `buchungen` ( + `Id` int(11) NOT NULL, + `UserId` int(11) NOT NULL, + `FlugId` int(11) NOT NULL, + `BuchungsDatum` datetime DEFAULT current_timestamp(), + `Status` varchar(50) DEFAULT 'Bestätigt' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; + +-- +-- Daten für Tabelle `buchungen` +-- + +INSERT INTO `buchungen` (`Id`, `UserId`, `FlugId`, `BuchungsDatum`, `Status`) VALUES +(12, 7, 94, '2026-02-25 14:18:35', 'Bestätigt'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `fluege` +-- + +CREATE TABLE `fluege` ( + `Id` int(11) NOT NULL, + `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(11) NOT NULL, + `PilotId` int(11) NOT NULL, + `ErstelltVon` int(11) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; + +-- +-- Daten für Tabelle `fluege` +-- + +INSERT INTO `fluege` (`Id`, `Abflugort`, `Zielort`, `Abflugdatum`, `Ankunftsdatum`, `Flugnummer`, `Preis`, `Created`, `FlugzeugId`, `PilotId`, `ErstelltVon`) VALUES +(91, 'Lissabon', 'Frankfurt', '2026-02-05 00:00:00', '2026-02-05 04:00:00', 'SYJ-716', 0.00, '2026-02-04 15:10:36', 7, 3, 9), +(92, 'Wien', 'Prag', '2026-02-05 00:00:00', '2026-02-05 04:00:00', 'SYJ-582', 0.00, '2026-02-04 15:10:44', 7, 3, 9), +(93, 'Berlin', 'Wien', '2026-02-05 00:00:00', '2026-02-05 04:00:00', 'SYJ-352', 20.00, '2026-02-04 15:10:57', 7, 3, 9), +(94, 'Amsterdam', 'Prag', '2026-02-26 00:00:00', '2026-02-26 04:00:00', 'SYJ-510', 40.00, '2026-02-25 10:25:39', 12, 6, 9); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `flugzeuge` +-- + +CREATE TABLE `flugzeuge` ( + `Id` int(11) NOT NULL, + `Modell` varchar(100) NOT NULL, + `Plaetze` int(11) 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` tinyint(1) NOT NULL DEFAULT 0 +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; + +-- +-- Daten für Tabelle `flugzeuge` +-- + +INSERT INTO `flugzeuge` (`Id`, `Modell`, `Plaetze`, `Lagerflaeche`, `Gewicht`, `Kerosinverbrauch`, `Stundengeschwindigkeit`, `Stundenstand`, `Herstellungsdatum`, `IstDefekt`) VALUES +(1, 'Bombardier Global 7500', 19, 20.5, 23000, 1100, 950, 450.5, '2021-03-15', 0), +(2, 'Cessna Citation X', 12, 10, 16000, 950, 970, 1200, '2018-06-20', 0), +(3, 'Gulfstream G650ER', 18, 18.5, 25000, 1200, 960, 800.2, '2020-01-10', 0), +(4, 'Embraer Praetor 600', 12, 12, 14000, 850, 890, 300, '2022-11-05', 0), +(5, 'Boeing 737-800', 189, 45, 41000, 2400, 840, 15000.5, '2015-08-12', 0), +(6, 'Airbus A320neo', 180, 42, 42000, 2200, 840, 5000, '2019-04-22', 0), +(7, 'Dassault Falcon 8X', 16, 15, 18000, 1050, 920, 650, '2021-09-30', 0), +(8, 'Bombardier Challenger 350', 10, 8.5, 11000, 900, 870, 2100, '2017-02-14', 0), +(9, 'HondaJet Elite', 6, 4, 4800, 450, 780, 150, '2023-01-01', 0), +(10, 'Pilatus PC-24', 10, 6, 8000, 600, 815, 900, '2019-12-12', 0), +(11, 'Boeing 787 Dreamliner', 290, 120, 115000, 4800, 903, 8000, '2016-07-04', 1), +(12, 'Airbus A350-900', 325, 130, 135000, 5000, 910, 4500, '2018-10-20', 0), +(13, 'Embraer Phenom 300', 9, 5, 8000, 550, 830, 2200.5, '2017-05-15', 0), +(14, 'Learjet 75 Liberty', 8, 4.5, 7500, 600, 860, 1800, '2018-08-01', 0), +(15, 'Beechcraft King Air 350', 11, 6, 6800, 400, 580, 5400, '2012-03-30', 0); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `mitarbeiter` +-- + +CREATE TABLE `mitarbeiter` ( + `Id` int(11) NOT NULL, + `Vorname` varchar(100) NOT NULL, + `Nachname` varchar(100) NOT NULL, + `Position` varchar(100) NOT NULL, + `MitarbeiterAlter` int(11) NOT NULL, + `ArbeitsstundenProWoche` float NOT NULL, + `IstVerfuegbar` tinyint(1) NOT NULL DEFAULT 1 +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `piloten` +-- + +CREATE TABLE `piloten` ( + `Id` int(11) NOT NULL, + `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) DEFAULT NULL, + `IstVerfuegbar` tinyint(1) NOT NULL DEFAULT 1, + `Sprachen` text DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; + +-- +-- Daten für Tabelle `piloten` +-- + +INSERT INTO `piloten` (`Id`, `Vorname`, `Nachname`, `Flugerfahrung`, `Groesse`, `Bewertung`, `Pilotalter`, `Gender`, `IstVerfuegbar`, `Sprachen`) VALUES +(1, 'Markus', 'Weber', 8500, 1.82, 4.8, '1980-05-15', 'M', 1, 'Deutsch, Englisch'), +(2, 'Julia', 'Müller', 4200, 1.7, 4.9, '1992-11-02', 'F', 1, 'Deutsch, Englisch, Französisch'), +(3, 'James', 'Smith', 12000, 1.78, 5, '1975-03-22', 'M', 1, 'Englisch, Spanisch'), +(4, 'Sophie', 'Dubois', 3500, 1.68, 4.5, '1995-07-14', 'F', 1, 'Französisch, Englisch'), +(5, 'Alessandro', 'Rossi', 6000, 1.85, 4.7, '1988-09-09', 'M', 1, 'Italienisch, Englisch, Deutsch'), +(6, 'Yuki', 'Tanaka', 5500, 1.72, 4.8, '1990-01-30', 'M', 1, 'Japanisch, Englisch'), +(7, 'Sarah', 'Connor', 9800, 1.75, 5, '1982-08-12', 'F', 0, 'Englisch, Deutsch'), +(8, 'Thomas', 'Schneider', 1500, 1.8, 4.2, '1998-04-05', 'M', 1, 'Deutsch, Englisch'), +(9, 'Elena', 'Popova', 7200, 1.69, 4.6, '1985-12-25', 'F', 1, 'Russisch, Englisch, Deutsch'), +(10, 'Carlos', 'Mendez', 11000, 1.76, 4.9, '1978-06-18', 'M', 1, 'Spanisch, Portugiesisch, Englisch'), +(11, 'Emma', 'Wilson', 2900, 1.65, 4.4, '1996-02-14', 'F', 1, 'Englisch'), +(12, 'Lukas', 'Hofer', 4800, 1.88, 4.7, '1991-10-31', 'M', 1, 'Deutsch, Italienisch'), +(13, 'Anna', 'Kovalenko', 6500, 1.73, 4.8, '1987-03-08', 'F', 1, 'Ukrainisch, Englisch, Polnisch'), +(14, 'David', 'Brown', 13500, 1.81, 5, '1970-11-20', 'M', 0, 'Englisch, Französisch'), +(15, 'Maria', 'Garcia', 5100, 1.67, 4.6, '1993-05-05', 'F', 1, 'Spanisch, Englisch'); + +-- -------------------------------------------------------- + +-- +-- Tabellenstruktur für Tabelle `users` +-- + +CREATE TABLE `users` ( + `Id` int(11) NOT NULL, + `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) DEFAULT NULL, + `Anrede` varchar(20) DEFAULT NULL, + `Geburtsdatum` date DEFAULT NULL, + `CreatedAt` datetime NOT NULL DEFAULT current_timestamp() +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_uca1400_ai_ci; + +-- +-- Daten für Tabelle `users` +-- + +INSERT INTO `users` (`Id`, `Vorname`, `Nachname`, `Email`, `PasswortHash`, `Rolle`, `Stadt`, `Anrede`, `Geburtsdatum`, `CreatedAt`) VALUES +(5, 'Stas', 'Kharchenko', 'Sayatguvancho@gmail.com', '$2a$11$3H50ugTZozarAor71LXA0OPTJc26znTwFR9M/ijge4.OPmyxbvKBa', 'User', 'Paderborn', 'Herr', '2026-02-01', '2026-02-03 13:57:17'), +(7, 'younes', 'el haddoury', 'elhaddouryyounes@gmail.com', '$2a$11$b31F.IK7S6q8sGhkUuVtp.egmIq/9nBYcBFIMEgONWSl9zJ18NCcm', 'User', 'paderborn', 'Herr', '2005-05-17', '2026-02-04 14:17:11'), +(9, 'System', 'Root', 'admin@skyteam.com', '$2a$11$3rjo3TbH7GTderZp1ZsdreWnVmSjGhAgeEAH7HiWkTenGrchrEaou', 'Admin', 'HQ', NULL, NULL, '2026-02-04 14:56:26'); + +-- +-- Indizes der exportierten Tabellen +-- + +-- +-- Indizes für die Tabelle `buchungen` +-- +ALTER TABLE `buchungen` + ADD PRIMARY KEY (`Id`), + ADD KEY `UserId` (`UserId`), + ADD KEY `FlugId` (`FlugId`); + +-- +-- Indizes für die Tabelle `fluege` +-- +ALTER TABLE `fluege` + ADD PRIMARY KEY (`Id`), + ADD KEY `FlugzeugId` (`FlugzeugId`), + ADD KEY `PilotId` (`PilotId`), + ADD KEY `ErstelltVon` (`ErstelltVon`); + +-- +-- Indizes für die Tabelle `flugzeuge` +-- +ALTER TABLE `flugzeuge` + ADD PRIMARY KEY (`Id`); + +-- +-- Indizes für die Tabelle `mitarbeiter` +-- +ALTER TABLE `mitarbeiter` + ADD PRIMARY KEY (`Id`); + +-- +-- Indizes für die Tabelle `piloten` +-- +ALTER TABLE `piloten` + ADD PRIMARY KEY (`Id`); + +-- +-- Indizes für die Tabelle `users` +-- +ALTER TABLE `users` + ADD PRIMARY KEY (`Id`); + +-- +-- AUTO_INCREMENT für exportierte Tabellen +-- + +-- +-- AUTO_INCREMENT für Tabelle `buchungen` +-- +ALTER TABLE `buchungen` + MODIFY `Id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=13; + +-- +-- AUTO_INCREMENT für Tabelle `fluege` +-- +ALTER TABLE `fluege` + MODIFY `Id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=95; + +-- +-- AUTO_INCREMENT für Tabelle `flugzeuge` +-- +ALTER TABLE `flugzeuge` + MODIFY `Id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=16; + +-- +-- AUTO_INCREMENT für Tabelle `mitarbeiter` +-- +ALTER TABLE `mitarbeiter` + MODIFY `Id` int(11) NOT NULL AUTO_INCREMENT; + +-- +-- AUTO_INCREMENT für Tabelle `piloten` +-- +ALTER TABLE `piloten` + MODIFY `Id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=16; + +-- +-- AUTO_INCREMENT für Tabelle `users` +-- +ALTER TABLE `users` + MODIFY `Id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10; + +-- +-- Constraints der exportierten Tabellen +-- + +-- +-- Constraints der Tabelle `buchungen` +-- +ALTER TABLE `buchungen` + ADD CONSTRAINT `buchungen_ibfk_1` FOREIGN KEY (`UserId`) REFERENCES `users` (`Id`) ON DELETE CASCADE, + ADD CONSTRAINT `buchungen_ibfk_2` FOREIGN KEY (`FlugId`) REFERENCES `fluege` (`Id`) ON DELETE CASCADE; + +-- +-- Constraints der Tabelle `fluege` +-- +ALTER TABLE `fluege` + ADD CONSTRAINT `fluege_ibfk_1` FOREIGN KEY (`FlugzeugId`) REFERENCES `flugzeuge` (`Id`) ON DELETE CASCADE, + ADD CONSTRAINT `fluege_ibfk_2` FOREIGN KEY (`PilotId`) REFERENCES `piloten` (`Id`) ON DELETE CASCADE, + ADD CONSTRAINT `fluege_ibfk_3` FOREIGN KEY (`ErstelltVon`) REFERENCES `users` (`Id`) ON DELETE CASCADE; +COMMIT; + +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */; \ No newline at end of file diff --git a/SkyTeam/icon.ico b/SkyTeam/icon.ico new file mode 100644 index 0000000..e5215d6 Binary files /dev/null and b/SkyTeam/icon.ico differ diff --git a/SkyTeam/reservierungsSuche.xaml b/SkyTeam/reservierungsSuche.xaml index 03327bc..d5083aa 100644 --- a/SkyTeam/reservierungsSuche.xaml +++ b/SkyTeam/reservierungsSuche.xaml @@ -6,9 +6,12 @@ Title="ReservierungssuchePage" Background="{DynamicResource PageBackground}"> + - +