FinalPresenceLexa/data/Repository/IPresenceRepository.cs
2025-04-28 11:51:01 +03:00

34 lines
1.8 KiB
C#

using data.RemoteData.RemoteDataBase.DAO;
namespace data.Repository;
public interface IPresenceRepository
{
public List<PresenceDAO> GetAttendanceByGroup(int groupId);
public List<PresenceDAO> GetPresenceForAbsent(DateOnly date, int groupId);
public List<PresenceDAO> GetPresenceByDateAndGroup(DateOnly startDate, DateOnly endDate, int groupId);
public List<PresenceDAO> GetPresenceByGroup(int groupId);
public void SavePresence(List<PresenceDAO> presences);
public void DeletePresenceByUser(int userId);
public void UpdateAtt(int userId, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance);
public DateOnly? GetLastDateByGroupId(int groupId);
public List<PresenceDAO> PresenceSort(List<PresenceDAO> presences);
public GroupAttendanceStatistics GetGeneralPresenceForGroup(int groupId);
public List<AllPresence> AllPresence(int groupId, DateOnly? dateStart, DateOnly? dateEnd, int? userId);
public void UpdateAttendance(List<AttendanceInput> attendanceList);
public void DeletePresenceByDateRange(int groupId, DateOnly startDate, DateOnly endDate);
public void DeletePresenceByGroup(int groupId);
public List<PresenceDAO> GetPresenceByUserAndGroup(int userId, int groupId);
public List<PresenceDAO> GetPresenceByDateRange(int groupId, DateOnly startDate, DateOnly endDate);
public void UpdateAttendance(int userId, int groupId, DateOnly date, int lessonNumber, bool isAttendance);
public List<PresenceDAO> GetPresence(int groupId, DateOnly? date, int? userId);
public void ClearPresenceByGroup(int groupId);
public void AddPresence(List<PresenceDAO> presenceList);
public void UpdatePresence(List<PresenceDAO> updatedList);
public List<PresenceDAO> GetPresenceByUserId(int userId);
}