namespace EgwCoreLib.Lux.Data.Repository.Items
{
public interface ISellingItemRepository : IBaseRepository
{
#region Public Methods
///
/// Inserisce un nuovo record SellingItem nel database.
///
/// Record da inserire
Task AddAsync(SellingItemModel entity);
///
/// Elimina un record SellingItem dal database.
///
/// Record da eliminare
Task DeleteAsync(SellingItemModel entity);
///
/// Recupera un record SellingItem specifico per ID.
///
/// ID dell'item di vendita da recuperare
Task GetByIdAsync(int recId);
///
/// Recupera tutti gli item di vendita per un ambiente specifico.
///
/// Ambiente di esecuzione
Task> GetByEnvirAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir);
///
/// Recupera gli item di vendita filtrati per ambiente e tipo sorgente.
///
/// Ambiente di esecuzione (NULL = tutti)
/// Tipo di sorgente (ND = tutti)
Task> GetFiltAsync(EgwMultiEngineManager.Data.Constants.EXECENVIRONMENTS envir, ItemSourceType sourceType);
///
/// Aggiorna un record SellingItem esistente nel database.
///
/// Record aggiornato
Task UpdateAsync(SellingItemModel entity);
#endregion Public Methods
}
}