new_presence/data/Repository/IPresenceRepository.cs
2024-11-16 11:29:24 +03:00

38 lines
1.9 KiB
C#
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

using data.RemoteData.DAO;
using domain.Models;
using System.Collections.Generic;
namespace data.Repository
{
// Интерфейс для репозитория работы с посещаемостью.
public interface IPresenceRepository
{
// Метод для добавления записи о посещении.
void AddPresence(PresenceLocalEntity presence);
// Метод для получения общей посещаемости группы.
public GroupPresenceSummary GetGeneralPresenceForGroup(int groupId);
// Метод для получения посещаемости по группе.
List<PresenceLocalEntity> GetPresenceByGroup(int groupId);
// Метод для получения посещаемости группы в виде DAO объектов.
List<PresenceDao> GetAttendanceByGroup(int groupId);
// Метод для получения посещаемости по группе и дате.
List<PresenceLocalEntity> GetPresenceByGroupAndDate(int groupId, DateTime date);
// Метод для получения последней даты посещаемости для группы.
DateOnly? GetLastDateByGroupId(int groupId);
// Метод для сохранения посещаемости для группы.
void SavePresence(List<PresenceLocalEntity> presences);
// Метод для обновления посещаемости для пользователя в указанном интервале уроков.
bool UpdateAttention(Guid UserGuid, int groupId, int firstLesson, int lastLesson, DateOnly date, bool isAttendance);
// Метод для пометки пользователя как отсутствующего в указанные уроки.
void MarkUserAsAbsent(Guid userGuid, int firstLessonNumber, int lastLessonNumber);
}
}