49 lines
2.0 KiB
C#
49 lines
2.0 KiB
C#
namespace EgwCoreLib.Lux.Data.Repository.Utils
|
|
{
|
|
/// <summary>
|
|
/// Interfaccia per la gestione delle classi generiche.
|
|
/// </summary>
|
|
public interface IGenClassRepository : IBaseRepository
|
|
{
|
|
/// <summary>
|
|
/// Inserisce una nuova classe generica nel database.
|
|
/// </summary>
|
|
/// <param name="entity">La classe da inserire.</param>
|
|
/// <returns>True se l'inserimento ha successo, false altrimenti.</returns>
|
|
Task<bool> AddAsync(GenClassModel entity);
|
|
|
|
/// <summary>
|
|
/// Conta i valori associati a una classe generica.
|
|
/// </summary>
|
|
/// <param name="classCod">Il codice della classe.</param>
|
|
/// <returns>Il numero di valori associati alla classe.</returns>
|
|
Task<int> CountChildrenAsync(string classCod);
|
|
|
|
/// <summary>
|
|
/// Elimina una classe generica dal database.
|
|
/// </summary>
|
|
/// <param name="entity">La classe da eliminare.</param>
|
|
/// <returns>True se l'eliminazione ha successo, false altrimenti.</returns>
|
|
Task<bool> DeleteAsync(GenClassModel entity);
|
|
|
|
/// <summary>
|
|
/// Recupera l'elenco di tutte le classi generiche con i valori associati.
|
|
/// </summary>
|
|
/// <returns>L'elenco di tutte le classi generiche.</returns>
|
|
Task<List<GenClassModel>> GetAllAsync();
|
|
|
|
/// <summary>
|
|
/// Recupera una classe generica per il suo codice.
|
|
/// </summary>
|
|
/// <param name="code">Il codice della classe.</param>
|
|
/// <returns>La classe corrispondente, o null se non esiste.</returns>
|
|
Task<GenClassModel?> GetByCodeAsync(string code);
|
|
|
|
/// <summary>
|
|
/// Aggiorna una classe generica esistente nel database.
|
|
/// </summary>
|
|
/// <param name="entity">La classe aggiornata.</param>
|
|
/// <returns>True se l'aggiornamento ha successo, false altrimenti.</returns>
|
|
Task<bool> UpdateAsync(GenClassModel entity);
|
|
}
|
|
} |