From dd5f354b14b887d43930d7e016f513e9d42c8a3a Mon Sep 17 00:00:00 2001 From: MarcoE Date: Tue, 4 Nov 2025 07:31:15 +0100 Subject: [PATCH] Fix caricamento post prima login --- .../Core/Services/ManageDataService.cs | 16 +++---------- .../Components/Pages/Calendar.razor | 4 ++++ salesbook.Shared/Components/Pages/Home.razor | 23 ++++++++----------- salesbook.Shared/Components/Pages/Users.razor | 2 +- 4 files changed, 18 insertions(+), 27 deletions(-) diff --git a/salesbook.Maui/Core/Services/ManageDataService.cs b/salesbook.Maui/Core/Services/ManageDataService.cs index 103bbb2..faa35d8 100644 --- a/salesbook.Maui/Core/Services/ManageDataService.cs +++ b/salesbook.Maui/Core/Services/ManageDataService.cs @@ -175,9 +175,7 @@ public class ManageDataService( public async Task> GetActivityTryLocalDb(WhereCondActivity whereCond) { - List? activities; - - activities = await localDb.Get(x => + var activities = await localDb.Get(x => (whereCond.ActivityId != null && x.ActivityId != null && whereCond.ActivityId.Equals(x.ActivityId)) || (whereCond.Start != null && whereCond.End != null && x.EffectiveTime == null && x.EstimatedTime >= whereCond.Start && x.EstimatedTime <= whereCond.End) || @@ -198,6 +196,7 @@ public class ManageDataService( _ = UpdateDb(activities); } + else return []; return await MapActivity(activities); } @@ -219,16 +218,7 @@ public class ManageDataService( _ = UpdateDb(activities); } - else - { - activities = await localDb.Get(x => - (whereCond.ActivityId != null && x.ActivityId != null && whereCond.ActivityId.Equals(x.ActivityId)) || - (whereCond.Start != null && whereCond.End != null && x.EffectiveTime == null && - x.EstimatedTime >= whereCond.Start && x.EstimatedTime <= whereCond.End) || - (x.EffectiveTime >= whereCond.Start && x.EffectiveTime <= whereCond.End) || - (whereCond.ActivityId == null && (whereCond.Start == null || whereCond.End == null)) - ); - } + else return await GetActivityTryLocalDb(whereCond); return await MapActivity(activities); } diff --git a/salesbook.Shared/Components/Pages/Calendar.razor b/salesbook.Shared/Components/Pages/Calendar.razor index a924445..e79e2cc 100644 --- a/salesbook.Shared/Components/Pages/Calendar.razor +++ b/salesbook.Shared/Components/Pages/Calendar.razor @@ -492,6 +492,8 @@ // Selezione giorno in settimana private async Task SelezionaData(DateTime day) { + if (IsLoading) return; + SelectedDate = day; var cacheInternalMonth = _internalMonth; @@ -513,6 +515,8 @@ // Selezione giorno dal mese (chiude la vista mese!) private async Task SelezionaDataDalMese(DateTime day) { + if (IsLoading) return; + SelectedDate = day; SliderAnimation = "collapse-animation"; Expanded = false; diff --git a/salesbook.Shared/Components/Pages/Home.razor b/salesbook.Shared/Components/Pages/Home.razor index 0df4d04..92849ac 100644 --- a/salesbook.Shared/Components/Pages/Home.razor +++ b/salesbook.Shared/Components/Pages/Home.razor @@ -15,12 +15,20 @@ @inject PreloadService PreloadService @inject IMessenger Messenger - + @code { protected override async Task OnInitializedAsync() { + var lastSyncDate = LocalStorage.Get("last-sync"); + if (!FormFactor.IsWeb() && NetworkService.ConnectionAvailable && lastSyncDate.Equals(DateTime.MinValue)) + { + var returnPath = System.Web.HttpUtility.UrlEncode("/"); + NavigationManager.NavigateTo($"/sync?path={returnPath}"); + return; + } + NetworkService.ConnectionAvailable = NetworkService.IsNetworkAvailable(); await LoadNotification(); @@ -35,14 +43,6 @@ Console.WriteLine($"Firebase init: {e.Message}"); } - var lastSyncDate = LocalStorage.Get("last-sync"); - - if (!FormFactor.IsWeb() && NetworkService.ConnectionAvailable && lastSyncDate.Equals(DateTime.MinValue)) - { - NavigationManager.NavigateTo("/sync"); - return; - } - _ = StartSyncUser(); NavigationManager.NavigateTo("/Calendar"); } @@ -60,9 +60,6 @@ private Task StartSyncUser() { - return Task.Run(() => - { - _ = PreloadService.PreloadUsersAsync(); - }); + return Task.Run(() => { _ = PreloadService.PreloadUsersAsync(); }); } } diff --git a/salesbook.Shared/Components/Pages/Users.razor b/salesbook.Shared/Components/Pages/Users.razor index 610d3c7..ce31050 100644 --- a/salesbook.Shared/Components/Pages/Users.razor +++ b/salesbook.Shared/Components/Pages/Users.razor @@ -42,7 +42,7 @@ { } - else if (GroupedUserList?.Count > 0) + else if (GroupedUserList.IsNullOrEmpty() || FilteredGroupedUserList.IsNullOrEmpty()) { @if (item.ShowHeader)