45 lines
1.4 KiB
C#
45 lines
1.4 KiB
C#
|
using data.RemoteData.RemoteDatabase.DAO;
|
||
|
using domain.UseCase;
|
||
|
|
||
|
namespace ui;
|
||
|
|
||
|
public class PresenceConsoleUI
|
||
|
{
|
||
|
private readonly PresenceUseCase _presenceUseCase;
|
||
|
|
||
|
public PresenceConsoleUI(PresenceUseCase presenceUseCase)
|
||
|
{
|
||
|
_presenceUseCase = presenceUseCase;
|
||
|
}
|
||
|
|
||
|
public void GeneratePresenceForDay(int firstLesson, int lastLesson, int groupId)
|
||
|
{
|
||
|
try
|
||
|
{
|
||
|
_presenceUseCase.GeneratePresenceForDay(firstLesson, lastLesson, groupId);
|
||
|
Console.WriteLine("Посещаемость на день успешно сгенерирована.");
|
||
|
}
|
||
|
catch (Exception ex)
|
||
|
{
|
||
|
Console.WriteLine($"Ошибка при генерации посещаемости: {ex.InnerException?.Message ?? ex.Message}");
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public void GeneratePresenceForWeek(int firstLesson, int lastLesson, int groupId)
|
||
|
{
|
||
|
for (int i = 0; i < 7; i++)
|
||
|
{
|
||
|
GeneratePresenceForDay(firstLesson, lastLesson, groupId);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
public List<PresenceDAO> ShowPresenceForDateAndGroup(DateOnly date, int groupId)
|
||
|
{
|
||
|
return _presenceUseCase.ShowPresenceForDateAndGroup(date, groupId);
|
||
|
}
|
||
|
|
||
|
public void MarkUserAbsent(DateOnly date, int groupId, int userId, int firstLesson, int lastLesson)
|
||
|
{
|
||
|
bool check=_presenceUseCase.MarkUserAbsent(date, groupId, userId, firstLesson, lastLesson);
|
||
|
}
|
||
|
}
|