Добавил слой Application

This commit is contained in:
2026-04-28 15:52:32 +03:00
parent df0e30a1ae
commit d64447f0be
25 changed files with 595 additions and 0 deletions
@@ -0,0 +1,25 @@
using UniVerse.Application.DTOs.Sync;
namespace UniVerse.Application.Interfaces;
public interface IScheduleSyncService
{
Task<SyncResultDto> SyncScheduleAsync(SyncScheduleRequest request);
Task<SyncResultDto> SyncRoomsAsync();
Task<List<EmployeeDto>> SearchEmployeesAsync(string fullname);
Task<SyncStatusDto> GetLastSyncStatusAsync();
}
public interface IModeusApiClient
{
Task<ModeusEventsResponse> SearchEventsAsync(SyncScheduleRequest request);
Task<ModeusRoomsResponse> SearchRoomsAsync();
Task<List<ModeusEmployee>> SearchEmployeeAsync(string fullname);
}
// Modeus API response models
public record ModeusEvent(string Id, string Name, DateTime StartsAt, DateTime EndsAt, string? RoomId, string? TeacherId, string? TypeId);
public record ModeusEventsResponse(List<ModeusEvent> Events);
public record ModeusRoom(string Id, string Name, string? Building);
public record ModeusRoomsResponse(List<ModeusRoom> Rooms);
public record ModeusEmployee(string? Id, string FullName, string? Department);