Presence.Desktop/data/Repository/IPresenceRepository.cs
2024-12-20 11:49:17 +03:00

30 lines
1.6 KiB
C#

using data.RemoteData.RemoteDatabase.DAO;
using data.RemoteData.RemoteDataBase.DAO;
namespace data.Repository
{
public interface IPresenceRepository
{
List<PresenceDao> GetPresenceByDateAndGroup(DateOnly startDate, DateOnly endTime, int groupId);
void SavePresence(List<PresenceDao> presences);
List<PresenceDao> GetPresenceByGroup(int groupId);
DateOnly? GetLastDateByGroupId(int groupId);
List<PresenceDao> GetPresenceForAbsent(DateOnly date, int GroupId);
GroupAttendanceStatistics GetGeneralPresenceForGroup(int groupId);
void UpdateAtt(int userId, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance);
List<PresenceDao> GetAttendanceByGroup(int groupId);
public List<AllPresence> AllPresence(int GroupId, DateOnly? dateStart, DateOnly? dateEnd, int? UserId);
public void UpdateAttendance(List<AttendanceInputModel> attendanceList);
public void DeletePresenceByUser(int groupId, int userId);
public void DeletePresenceByDateRange(int groupId, DateOnly startDate, DateOnly endDate);
public void DeletePresenceByGroup(int groupId);
void DeletePresences(List<PresenceDao> presences);
List<PresenceDao> GetPresenceByUserAndGroup(int userId, int groupId);
List<PresenceDao> GetPresenceByDateRange(int groupId, DateOnly startDate, DateOnly endDate);
void UpdateAttendance(int userId, int groupId, DateOnly date, int lessonNumber, bool isAttendance);
public IEnumerable<PresenceDao> GetPresence(int groupId, DateOnly startDate, DateOnly endDate);
}
}