diff --git a/Jugenddienst Stunden/AppShell.xaml b/Jugenddienst Stunden/AppShell.xaml index ed27028..77036a3 100644 --- a/Jugenddienst Stunden/AppShell.xaml +++ b/Jugenddienst Stunden/AppShell.xaml @@ -11,6 +11,11 @@ Title="Stunden" ContentTemplate="{DataTemplate views:StundenPage}" Icon="{OnPlatform 'icon_watch.png', iOS='icon_watch_ios.png', MacCatalyst='icon_watch_ios.png'}" /> + + 11.0 13.1 - 27.0 + 29.0 10.0.17763.0 10.0.17763.0 6.5 diff --git a/Jugenddienst Stunden/Models/Stunde.cs b/Jugenddienst Stunden/Models/Stunde.cs index a18fa81..d041417 100644 --- a/Jugenddienst Stunden/Models/Stunde.cs +++ b/Jugenddienst Stunden/Models/Stunde.cs @@ -4,14 +4,15 @@ using Microsoft.Maui.Networking; using Microsoft.Maui.Controls; using System; using System.Text; +using System.Text.Json; using Jugenddienst_Stunden.Types; +using System.Collections.Generic; -namespace Jugenddienst_Stunden.Models -{ - internal class Stunde : ObservableObject { +namespace Jugenddienst_Stunden.Models { + internal class Stunde : ObservableObject { + - //Default-Werte zum Testen @@ -54,14 +55,14 @@ namespace Jugenddienst_Stunden.Models //name = "Le"; //surname = "Ma"; - //apiKey = "OXxpM0lQcXcySUp0S3hHbzFSb3VqdStwRXlDQmd8aHR0cHM6Ly9ob3Vycy5waWRhLmluZm8vYXBwYXBp"; - //name = "Eli"; - //surname = "Gap"; + apiKey = "OXxzTkxVWjJqdmI2VXFrdUhtcktwK1d1YU41cTh8aHR0cDovL2hvdXJzLmRhdW5pLm1pbmUubnU6ODEvYXBwYXBp"; + name = "Eli"; + surname = "Gap"; - //Preferences.Default.Set("apiKey", apiKey); - //Preferences.Default.Set("name", name); - //Preferences.Default.Set("surname", surname); + Preferences.Default.Set("apiKey", apiKey); + Preferences.Default.Set("name", name); + Preferences.Default.Set("surname", surname); Hours hours = new Hours(); @@ -74,39 +75,7 @@ namespace Jugenddienst_Stunden.Models var tokendata = new TokenData(apiKey); //string data = await Auth.GetApiDataWithAuthAsync(requestUrl, apiKey); - string data = await Auth.GetApiDataWithAuthAsync(tokendata.url + "?hours&month="+DateTime.Today.Month, tokendata.apiKey); - - if (data == null) { - throw new Exception("Keine Daten erhalten"); - } - if(data == "\"Lalala\"") { - throw new Exception("Problem mit Token"); - } - - hours = JsonConvert.DeserializeObject(data); - //Preferences.Default.Set("name", hours.operator_api.name); - //Preferences.Default.Set("surname", hours.operator_api.surname); - - - } - return hours; - } - - - public static async Task LoadDay(DateTime date) { - - - Hours hours = new Hours(); - - if (Connectivity.Current.NetworkAccess == NetworkAccess.None) { - await App.Current.MainPage.DisplayAlert("Keine Internetverbindung", - "Bitte überprüfen Sie Ihre Internetverbindung und versuchen Sie es erneut.", - "OK"); - } else { - var tokendata = new TokenData(apiKey); - - //string data = await Auth.GetApiDataWithAuthAsync(requestUrl, apiKey); - string data = await Auth.GetApiDataWithAuthAsync(tokendata.url + "?hours&date="+date.ToString("yyyy-MM-dd"), tokendata.apiKey); + string data = await Auth.GetApiDataWithAuthAsync(tokendata.url + "?hours&month=" + DateTime.Today.Month, tokendata.apiKey); if (data == null) { throw new Exception("Keine Daten erhalten"); @@ -121,13 +90,50 @@ namespace Jugenddienst_Stunden.Models } - Hours = hours; return hours; } - public static DayTime LoadEntry(int id) { - DayTime hours = Hours.daytime.Find(x => x.id == id); + public static async Task> LoadDay(DateTime date) { + + + List daytimes = new List(); + + if (Connectivity.Current.NetworkAccess == NetworkAccess.None) { + await App.Current.MainPage.DisplayAlert("Keine Internetverbindung", + "Bitte überprüfen Sie Ihre Internetverbindung und versuchen Sie es erneut.", + "OK"); + } else { + var tokendata = new TokenData(apiKey); + + //string data = await Auth.GetApiDataWithAuthAsync(requestUrl, apiKey); + string data = await Auth.GetApiDataWithAuthAsync(tokendata.url + "?hours&date=" + date.ToString("yyyy-MM-dd"), tokendata.apiKey); + + if (data == null) { + throw new Exception("Keine Daten erhalten"); + } + if (data == "\"Lalala\"") { + throw new Exception("Problem mit Token"); + } + + daytimes = System.Text.Json.JsonSerializer.Deserialize>(data); + //Preferences.Default.Set("name", hours.operator_api.name); + //Preferences.Default.Set("surname", hours.operator_api.surname); + + + } + //Hours = hours; + return daytimes; + } + + public static async Task LoadEntry(int id) { + + var tokendata = new TokenData(apiKey); + + var data = await Auth.GetApiDataWithAuthAsync(tokendata.url + "?id=" + id, tokendata.apiKey); + + //DayTime hours = Hours.daytime.Find(x => x.id == id); + DayTime hours = JsonConvert.DeserializeObject(data); return hours; } diff --git a/Jugenddienst Stunden/ViewModels/StundenViewModel.cs b/Jugenddienst Stunden/ViewModels/StundenViewModel.cs index 7771331..abdc44d 100644 --- a/Jugenddienst Stunden/ViewModels/StundenViewModel.cs +++ b/Jugenddienst Stunden/ViewModels/StundenViewModel.cs @@ -26,7 +26,10 @@ namespace Jugenddienst_Stunden.ViewModels { public object Stunden { get; } - + private List _stunde; + public List Stunde { + get => _stunde; + } private Types.Hours _hour; public Types.Hours Hours { get => _hour; @@ -155,14 +158,14 @@ namespace Jugenddienst_Stunden.ViewModels { public async Task LoadDay(DateTime date) { try { - _hour = await Models.Stunde.LoadDay(date); - if (_hour.zeit_total_daily_api != null) { - TimeDay = _hour.zeit_total_daily_api.Where(static p => p.Day == GetDay.Day).ToList() ?? new List { new TimeDay { Day = GetDay.Day, Hours = 0 } }; + _hour.daytime = await Models.Stunde.LoadDay(date); + ////if (_hour.zeit_total_daily_api != null) { + ////TimeDay = _hour.zeit_total_daily_api.Where(static p => p.Day == GetDay.Day).ToList() ?? new List { new TimeDay { Day = GetDay.Day, Hours = 0 } }; //RefreshProperties(); OnPropertyChanged(nameof(ShowDay)); OnPropertyChanged(nameof(TimeDay)); OnPropertyChanged(nameof(DayTimes)); - } + ////} } catch (Exception e) { AlertEvent?.Invoke(this, e.Message); } diff --git a/Jugenddienst Stunden/Views/StundePage.xaml b/Jugenddienst Stunden/Views/StundePage.xaml index afcfbbc..281d7cf 100644 --- a/Jugenddienst Stunden/Views/StundePage.xaml +++ b/Jugenddienst Stunden/Views/StundePage.xaml @@ -5,14 +5,21 @@ x:Class="Jugenddienst_Stunden.Views.StundePage" Title="StundePage"> - +