Files
GestionIntegralWeb/Backend/GestionIntegral.Api/Data/Repositories/Radios/ICancionRepository.cs

18 lines
967 B
C#
Raw Normal View History

using GestionIntegral.Api.Models.Radios;
using System.Collections.Generic;
using System.Threading.Tasks;
// using System.Data; // Solo si se usa transacción para historial
namespace GestionIntegral.Api.Data.Repositories.Radios
{
public interface ICancionRepository
{
Task<IEnumerable<Cancion>> GetAllAsync(string? temaFilter, string? interpreteFilter, int? idRitmoFilter);
Task<Cancion?> GetByIdAsync(int id);
Task<Cancion?> CreateAsync(Cancion nuevaCancion /*, int idUsuario, IDbTransaction transaction - si hay historial */);
Task<bool> UpdateAsync(Cancion cancionAActualizar /*, int idUsuario, IDbTransaction transaction */);
Task<bool> DeleteAsync(int id /*, int idUsuario, IDbTransaction transaction */);
Task<bool> ExistsByTemaAndInterpreteAsync(string tema, string interprete, int? excludeId = null); // Ejemplo de unicidad
Task<IEnumerable<Cancion>> GetRandomCancionesAsync(int count);
}
}