namespace Lux.UI.Components.Pages { public partial class OffStats { protected override async Task OnInitializedAsync() { isLoading = true; await ReloadDataAsync(); isLoading = false; } [Inject] private IJSRuntime JSRuntime { get; set; } = null!; [Inject] private IOfferService OffService { get; set; } = default!; [Inject] private NavigationManager NavigationManager { get; set; } = null!; private List AllOfferRecords { get; set; } = new(); private bool isLoading = false; private bool needReload = false; private EgwCoreLib.Utils.DtUtils.Periodo periodoLimit = new EgwCoreLib.Utils.DtUtils.Periodo(EgwCoreLib.Utils.DtUtils.PeriodSet.LastYear); ////private EgwCoreLib.Utils.DtUtils.Periodo periodoSel = new EgwCoreLib.Utils.DtUtils.Periodo(DateTime.Today.AddHours(DateTime.Now.Hour - 24 * 7), DateTime.Today.AddHours(DateTime.Now.Hour + 1)); private EgwCoreLib.Utils.DtUtils.Periodo periodoSel = new EgwCoreLib.Utils.DtUtils.Periodo(DateTime.Today.AddMonths(-5), DateTime.Today.AddHours(DateTime.Now.Hour + 1)); private string btnReload => needReload ? "btn-primary" : "btn-secondary"; private async Task ReloadDataAsync() { await OffService.CheckExpiredAsync(); AllOfferRecords = await OffService.GetFiltAsync(periodoSel.Inizio, periodoSel.Fine); } /// /// Caricamento dati /// /// private Task DoReload() { return ReloadDataAsync(); } private DateTime dtFrom { get => periodoSel.Inizio; set { if (periodoSel.Inizio != value) { periodoSel.Inizio = value; needReload = true; } } } private DateTime dtTo { get => periodoSel.Fine; set { if (periodoSel.Fine != value) { periodoSel.Fine = value; needReload = true; } } } } }