Files
lux/EgwCoreLib.Lux.Data/Services/Stats/IStatsAggrService.cs
T
Samuele E. Locatelli (W11-AI) 110b473f60 Continuo fix interfaces XML comments
2026-03-25 15:26:16 +01:00

31 lines
1.2 KiB
C#

namespace EgwCoreLib.Lux.Data.Services.Stats
{
public interface IStatsAggrService
{
#region Public Methods
/// <summary>
/// Recupera l'elenco delle statistiche aggregate per un periodo specificato.
/// Utilizza la cache automaticamente.
/// </summary>
/// <param name="dtStart">Data inizio periodo</param>
/// <param name="dtEnd">Data fine periodo</param>
Task<List<StatsAggregatedModel>> GetFiltAsync(DateTime dtStart, DateTime dtEnd);
/// <summary>
/// Recupera il range di periodi valido per le chiamate aggregate.
/// Utilizza la cache automaticamente.
/// </summary>
Task<DtUtils.Periodo> GetRangeAsync();
/// <summary>
/// Inserisce o aggiorna in batch le statistiche aggregate nel database.
/// Opzionalmente elimina i record precedenti nel periodo specificato.
/// </summary>
/// <param name="listRecords">Elenco dei record da inserire/aggiornare</param>
/// <param name="removeOld">Se true elimina preventivamente i record nel periodo richiesto</param>
Task<int> UpsertManyAsync(List<StatsAggregatedModel> listRecords, bool removeOld);
#endregion Public Methods
}
}