110 lines
4.6 KiB
C#
110 lines
4.6 KiB
C#
using EgwCoreLib.Lux.Data.Services.Internal;
|
|
|
|
namespace EgwCoreLib.Lux.Data.Services.General
|
|
{
|
|
/// <summary>
|
|
/// Interfaccia servizio livello dati (orchestrazione)
|
|
/// </summary>
|
|
public interface IDataLayerServices
|
|
{
|
|
#region Public Properties
|
|
|
|
public MessagePipe PipeBom { get; set; }
|
|
|
|
public MessagePipe PipeHwList { get; set; }
|
|
|
|
public MessagePipe PipeHwOpt { get; set; }
|
|
|
|
public MessagePipe PipePng { get; set; }
|
|
|
|
public MessagePipe PipeProd { get; set; }
|
|
|
|
public MessagePipe PipeProfElement { get; set; }
|
|
|
|
public MessagePipe PipeProfList { get; set; }
|
|
|
|
public MessagePipe PipeShape { get; set; }
|
|
|
|
public MessagePipe PipeSvg { get; set; }
|
|
|
|
public MessagePipe PipeUpdate { get; set; }
|
|
|
|
#endregion Public Properties
|
|
|
|
#region Public Methods
|
|
|
|
/// <summary>
|
|
/// Reset completo cache sistema (modalità async)
|
|
/// </summary>
|
|
/// <param name="cancellationToken">Token di cancellazione</param>
|
|
/// <returns>Task di completamento</returns>
|
|
Task FlushCacheAsync();
|
|
|
|
/// <summary>
|
|
/// Restituisce un dizionario di EventDto da usare nel planner
|
|
/// </summary>
|
|
/// <param name="dtStart">Data inizio</param>
|
|
/// <param name="dtEnd">Data fine</param>
|
|
/// <returns>Dizionario fasi -> eventi</returns>
|
|
Task<Dictionary<string, List<EventDto>>?> PlannerGetEventsAsync(DateTime dtStart, DateTime dtEnd);
|
|
|
|
/// <summary>
|
|
/// Esegue salvataggio BOM sul DB
|
|
/// </summary>
|
|
/// <param name="uID">UID dell'item offerta</param>
|
|
/// <param name="qMode">Mode della chiamata</param>
|
|
/// <param name="execEnvironment">Environment dell'item</param>
|
|
/// <param name="bomContent">BOM serializzata</param>
|
|
/// <returns>Task di completamento</returns>
|
|
Task SaveBomAsync(string uID, Egw.Window.Data.Enums.QuestionModes qMode, Constants.EXECENVIRONMENTS execEnvironment, string bomContent);
|
|
|
|
/// <summary>
|
|
/// Esegue salvataggio HardwareModelList sul DB
|
|
/// </summary>
|
|
/// <param name="uID">UID dell'item offerta di cui si è ricevuto la BOM</param>
|
|
/// <param name="execEnvironment">Environment dell'item</param>
|
|
/// <param name="rawContent">HardwareModelList serializzata</param>
|
|
/// <returns></returns>
|
|
Task SaveHmlAsync(string uID, Constants.EXECENVIRONMENTS execEnvironment, string rawContent);
|
|
|
|
/// <summary>
|
|
/// Esegue salvataggio ProdBalance (di un gruppo lavorazioni per riga ordine) sul DB
|
|
/// </summary>
|
|
/// <param name="uID">UID dell'item offerta</param>
|
|
/// <param name="rGroup">Prod Group di riferimento</param>
|
|
/// <param name="execEnvironment">Environment dell'item</param>
|
|
/// <param name="balance">Stima Balance serializzata</param>
|
|
/// <returns>True se salvato con successo</returns>
|
|
Task<bool> SaveProdBalanceAsync(string uID, string rGroup, Constants.EXECENVIRONMENTS execEnvironment, string balance);
|
|
|
|
/// <summary>
|
|
/// Esegue salvataggio ProdEstimate (per riga ordine) sul DB
|
|
/// </summary>
|
|
/// <param name="uID">UID dell'item offerta di cui si è ricevuto la ProdEstim</param>
|
|
/// <param name="execEnvironment">Environment dell'item</param>
|
|
/// <param name="prodEstim">Stima ProdEstimate serializzata</param>
|
|
/// <returns></returns>
|
|
Task<bool> SaveProdEstimateAsync(string uID, Constants.EXECENVIRONMENTS execEnvironment, string prodEstim);
|
|
|
|
/// <summary>
|
|
/// MockUp (fake) salvataggio ProfileListAsync sul DB
|
|
/// </summary>
|
|
/// <param name="uID">UID ricezione (default tipicamente)</param>
|
|
/// <param name="execEnvironment">Environment dell'item</param>
|
|
/// <param name="rawContent">ProfileListAsync serializzata</param>
|
|
/// <returns></returns>
|
|
Task<bool> SaveProfileListAsync(string uID, Constants.EXECENVIRONMENTS execEnvironment, string rawContent);
|
|
|
|
/// <summary>
|
|
/// MockUp (fake) salvataggio ProfileThreshold sul DB
|
|
/// </summary>
|
|
/// <param name="uID">UID del profilo</param>
|
|
/// <param name="execEnvironment">Environment dell'item</param>
|
|
/// <param name="rawThreshold">ThresholdList serializzata</param>
|
|
/// <param name="rawData">Info profile data serializzati</param>
|
|
/// <returns></returns>
|
|
Task<bool> SaveProfileThreshAsync(string uID, Constants.EXECENVIRONMENTS execEnvironment, string rawThreshold, string rawData);
|
|
|
|
#endregion Public Methods
|
|
}
|
|
} |