23 lines
910 B
C#
23 lines
910 B
C#
using MieSystem.Models;
|
|
|
|
namespace MieSystem.Data.Interfaces
|
|
{
|
|
public interface IAsistenciaRepository
|
|
{
|
|
// CRUD básico
|
|
Task<Asistencia> GetByIdAsync(int id);
|
|
Task<IEnumerable<Asistencia>> GetByExpedienteAsync(int expedienteId, DateTime? fechaDesde = null, DateTime? fechaHasta = null);
|
|
Task<IEnumerable<Asistencia>> GetAsistenciasPorMesAsync(int año, int mes);
|
|
Task<bool> GuardarAsistenciaAsync(Asistencia asistencia);
|
|
Task<bool> EliminarAsistenciaAsync(int id);
|
|
|
|
// Estadísticas
|
|
Task<EstadisticasMes> GetEstadisticasMesAsync(int año, int mes);
|
|
Task<Dictionary<int, decimal>> GetPorcentajesAsistenciaAsync(int año, int mes);
|
|
|
|
// Operaciones masivas
|
|
Task<bool> GuardarAsistenciasMasivasAsync(IEnumerable<Asistencia> asistencias);
|
|
Task<bool> EliminarAsistenciasPorFechaAsync(DateTime fecha);
|
|
}
|
|
}
|