Files
lux/Lux.UI/Components/Pages/ProdPlanner.razor.cs
T
2026-01-15 09:25:55 +01:00

64 lines
1.7 KiB
C#

using EgwCoreLib.Lux.Core.Generic;
using EgwCoreLib.Lux.Data.Services;
using Microsoft.AspNetCore.Components;
using System.Collections.Generic;
namespace Lux.UI.Components.Pages
{
public partial class ProdPlanner
{
#region Protected Properties
[Inject]
protected DataLayerServices DLService { get; set; } = null!;
#endregion Protected Properties
#region Private Fields
/// <summary>
/// Periodo selezionato attuale
/// </summary>
private EgwCoreLib.Utils.DtUtils.Periodo PeriodoSel = new EgwCoreLib.Utils.DtUtils.Periodo(EgwCoreLib.Utils.DtUtils.PeriodSet.ThisYear);
#endregion Private Fields
#region Private Properties
private List<EventDto> ListEventi { get; set; } = new();
#endregion Private Properties
#region Private Methods
/// <summary>
/// Legge i dati dei record completi
/// </summary>
private async Task ReloadData()
{
var rawData = await DLService.PlannerGetEvents(PeriodoSel.Inizio, PeriodoSel.Fine);
if (rawData != null && rawData.Count > 0)
{
ListEventi.Clear();
// x ora copio i vari blocchi...
foreach (var item in rawData)
{
ListEventi.AddRange(item.Value);
}
}
}
/// <summary>
/// Imposta periodo da filtro
/// </summary>
/// <param name="newPeriod"></param>
/// <returns></returns>
private async Task SetPeriodo(EgwCoreLib.Utils.DtUtils.Periodo newPeriod)
{
PeriodoSel = newPeriod;
await ReloadData();
}
#endregion Private Methods
}
}