From a91e08f162faa30a007d12b4ecf4fd7d8aa1e194 Mon Sep 17 00:00:00 2001 From: MarcoE Date: Fri, 14 Nov 2025 15:59:09 +0100 Subject: [PATCH] Aggiunta sync giornaliera delle commesse --- salesbook.Shared/Components/Pages/Home.razor | 8 ++++++ .../Components/Pages/SyncPage.razor | 27 ++++++++++--------- 2 files changed, 23 insertions(+), 12 deletions(-) diff --git a/salesbook.Shared/Components/Pages/Home.razor b/salesbook.Shared/Components/Pages/Home.razor index 028a2d8..cdf0185 100644 --- a/salesbook.Shared/Components/Pages/Home.razor +++ b/salesbook.Shared/Components/Pages/Home.razor @@ -23,6 +23,7 @@ { var lastSyncDate = LocalStorage.Get("last-sync"); var syncAllData = lastSyncDate.Equals(DateTime.MinValue) || (DateTime.Now - lastSyncDate).TotalDays >= 7; + var syncCodJcom = lastSyncDate.Day != DateTime.Now.Day; if (!FormFactor.IsWeb() && NetworkService.ConnectionAvailable && syncAllData) { @@ -31,6 +32,13 @@ return; } + if (syncCodJcom && !syncAllData) + { + var returnPath = System.Web.HttpUtility.UrlEncode("/"); + NavigationManager.NavigateTo($"/sync/{DateTime.Today:yyyy-MM-dd}?path={returnPath}"); + return; + } + NetworkService.ConnectionAvailable = NetworkService.IsNetworkAvailable(); await LoadNotification(); diff --git a/salesbook.Shared/Components/Pages/SyncPage.razor b/salesbook.Shared/Components/Pages/SyncPage.razor index 3cd0968..7c93c2a 100644 --- a/salesbook.Shared/Components/Pages/SyncPage.razor +++ b/salesbook.Shared/Components/Pages/SyncPage.razor @@ -3,8 +3,8 @@ @using salesbook.Shared.Components.Layout.Spinner @using salesbook.Shared.Components.SingleElements @using salesbook.Shared.Core.Interface -@inject ISyncDbService syncDb -@inject IManageDataService manageData +@inject ISyncDbService SyncDb +@inject IManageDataService ManageData @@ -15,13 +15,15 @@ private Dictionary Elements { get; set; } = new(); - private bool _hasStarted = false; - private int _completedCount = 0; + private bool _hasStarted; + private int _completedCount; protected override void OnInitialized() { Elements["Commesse"] = false; - Elements["Impostazioni"] = false; + + if (DateFilter is null) + Elements["Impostazioni"] = false; } protected override async Task OnAfterRenderAsync(bool firstRender) @@ -31,9 +33,7 @@ _hasStarted = true; if (DateFilter is null) - { - await manageData.ClearDb(); - } + await ManageData.ClearDb(); await Task.WhenAll( RunAndTrack(SetCommesse), @@ -61,7 +61,7 @@ private async Task SetCommesse() { - await Task.Run(async () => { await syncDb.GetAndSaveCommesse(DateFilter); }); + await Task.Run(async () => { await SyncDb.GetAndSaveCommesse(DateFilter); }); Elements["Commesse"] = true; StateHasChanged(); @@ -69,10 +69,13 @@ private async Task SetSettings() { - await Task.Run(async () => { await syncDb.GetAndSaveSettings(DateFilter); }); + if (DateFilter is null) + { + await Task.Run(async () => { await SyncDb.GetAndSaveSettings(DateFilter); }); - Elements["Impostazioni"] = true; - StateHasChanged(); + Elements["Impostazioni"] = true; + StateHasChanged(); + } } } \ No newline at end of file