fix: синхронизации лекций
🚀 Create and publish a Docker image / Detect changes in backend and frontend (push) Successful in 9s
🚀 Create and publish a Docker image / Build & publish backend image (push) Successful in 1m3s
🚀 Create and publish a Docker image / Build & publish frontend image (push) Successful in 25s
🚀 Create and publish a Docker image / Update stack on Portainer (push) Successful in 7s
🚀 Create and publish a Docker image / Detect changes in backend and frontend (push) Successful in 9s
🚀 Create and publish a Docker image / Build & publish backend image (push) Successful in 1m3s
🚀 Create and publish a Docker image / Build & publish frontend image (push) Successful in 25s
🚀 Create and publish a Docker image / Update stack on Portainer (push) Successful in 7s
This commit is contained in:
@@ -19,8 +19,66 @@ public interface IModeusApiClient
|
||||
}
|
||||
|
||||
// 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 class ModeusEvent
|
||||
{
|
||||
public string Id { get; init; } = string.Empty;
|
||||
public string Name { get; init; } = string.Empty;
|
||||
public string? NameShort { get; init; }
|
||||
public string? Description { get; init; }
|
||||
public string? TypeId { get; init; }
|
||||
public DateTime StartsAt { get; init; }
|
||||
public DateTime EndsAt { get; init; }
|
||||
|
||||
[JsonPropertyName("_links")]
|
||||
public ModeusEventLinks? Links { get; init; }
|
||||
}
|
||||
|
||||
public class ModeusEventLinks
|
||||
{
|
||||
[JsonPropertyName("course-unit-realization")]
|
||||
public ModeusHrefLink? CourseUnitRealization { get; init; }
|
||||
}
|
||||
|
||||
public class ModeusEventsResponse
|
||||
{
|
||||
[JsonPropertyName("_embedded")]
|
||||
public ModeusEventsEmbedded? Embedded { get; init; }
|
||||
public List<ModeusEvent>? Events { get; init; }
|
||||
public ModeusPage? Page { get; init; }
|
||||
|
||||
[JsonIgnore]
|
||||
public IReadOnlyList<ModeusEvent> EventItems => Embedded?.Events ?? Events ?? [];
|
||||
}
|
||||
public class ModeusEventsEmbedded
|
||||
{
|
||||
public List<ModeusEvent>? Events { get; init; }
|
||||
|
||||
[JsonPropertyName("course-unit-realizations")]
|
||||
public List<ModeusCourseUnitRealization>? CourseUnitRealizations { get; init; }
|
||||
|
||||
[JsonPropertyName("event-rooms")]
|
||||
public List<ModeusEventRoom>? EventRooms { get; init; }
|
||||
|
||||
[JsonPropertyName("event-teams")]
|
||||
public List<ModeusEventTeam>? EventTeams { get; init; }
|
||||
|
||||
public List<ModeusRoom>? Rooms { get; init; }
|
||||
}
|
||||
public record ModeusHrefLink(string? Href);
|
||||
public record ModeusCourseUnitRealization(string Id, string Name, string? NameShort);
|
||||
public class ModeusEventRoom
|
||||
{
|
||||
public string Id { get; init; } = string.Empty;
|
||||
|
||||
[JsonPropertyName("_links")]
|
||||
public ModeusEventRoomLinks? Links { get; init; }
|
||||
}
|
||||
public class ModeusEventRoomLinks
|
||||
{
|
||||
public ModeusHrefLink? Event { get; init; }
|
||||
public ModeusHrefLink? Room { get; init; }
|
||||
}
|
||||
public record ModeusEventTeam(string EventId, int? Size);
|
||||
public record ModeusBuilding(string? Id, string? Name, string? NameShort, string? Address);
|
||||
public record ModeusRoom(string Id, string Name, string? NameShort, ModeusBuilding? Building, int? TotalCapacity, int? WorkingCapacity);
|
||||
public record ModeusRoomsEmbedded(List<ModeusRoom>? Rooms);
|
||||
|
||||
Reference in New Issue
Block a user