diff options
Diffstat (limited to 'server/src/Data/Dtos')
| -rw-r--r-- | server/src/Data/Dtos/TimeQueryDto.cs | 34 | ||||
| -rw-r--r-- | server/src/Data/Dtos/UserArchiveDto.cs | 131 |
2 files changed, 0 insertions, 165 deletions
diff --git a/server/src/Data/Dtos/TimeQueryDto.cs b/server/src/Data/Dtos/TimeQueryDto.cs deleted file mode 100644 index f734cb1..0000000 --- a/server/src/Data/Dtos/TimeQueryDto.cs +++ /dev/null @@ -1,34 +0,0 @@ - -namespace IOL.GreatOffice.Api.Data.Dtos; - -public class TimeQueryDto -{ - public TimeQueryDto() { - Results = new List<TimeEntry.TimeEntryDto>(); - } - - /// <summary> - /// List of entries. - /// </summary> - public List<TimeEntry.TimeEntryDto> Results { get; set; } - - /// <summary> - /// Curren page. - /// </summary> - public int Page { get; set; } - - /// <summary> - /// Maximum count of entries in a page. - /// </summary> - public int PageSize { get; set; } - - /// <summary> - /// Total count of entries. - /// </summary> - public int TotalSize { get; set; } - - /// <summary> - /// Total count of pages. - /// </summary> - public int TotalPageCount { get; set; } -} diff --git a/server/src/Data/Dtos/UserArchiveDto.cs b/server/src/Data/Dtos/UserArchiveDto.cs deleted file mode 100644 index 42e0600..0000000 --- a/server/src/Data/Dtos/UserArchiveDto.cs +++ /dev/null @@ -1,131 +0,0 @@ - -namespace IOL.GreatOffice.Api.Data.Dtos; - -/// <summary> -/// Represents a user archive as it is provided to users. -/// </summary> -public class UserArchiveDto -{ - /// <inheritdoc cref="UserArchiveDto"/> - public UserArchiveDto(User user) { - Meta = new MetaDto { - GeneratedAt = AppDateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ssZ") - }; - User = new UserDto(user); - Entries = new List<EntryDto>(); - } - - /// <summary> - /// Metadata for the user archive. - /// </summary> - public MetaDto Meta { get; } - - /// <summary> - /// Relevant user data for the archive. - /// </summary> - public UserDto User { get; } - - /// <summary> - /// List of entries that the user has created. - /// </summary> - public List<EntryDto> Entries { get; } - - public void CountEntries() { - Meta.EntryCount = Entries.Count; - } - - /// <summary> - /// Represents a time entry in the data archive. - /// </summary> - public class EntryDto - { - public string CreatedAt { get; init; } - - [JsonIgnore] - public DateTime StartDateTime { get; init; } - - /// <summary> - /// ISO 8601 string of the UTC date the time entry started. - /// </summary> - public string Start => StartDateTime.ToString("yyyy-MM-ddTHH:mm:ssZ"); - - [JsonIgnore] - public DateTime StopDateTime { get; init; } - - /// <summary> - /// ISO 8601 string of the UTC date the time entry stopped. - /// </summary> - public string Stop => StopDateTime.ToString("yyyy-MM-ddTHH:mm:ssZ"); - - /// <summary> - /// Total amount of minutes elapsed from start to stop on this time entry. - /// </summary> - public double Minutes => StopDateTime.Subtract(StartDateTime).TotalMinutes; - - public string Description { get; init; } - - /// <summary> - /// Archive spesific category for this time entry. - /// </summary> - public CategoryDto Category { get; init; } - - /// <summary> - /// Archive spesific list of labels for this time entry. - /// </summary> - public List<LabelDto> Labels { get; init; } - } - - /// <summary> - /// Time entry category as it is written to the user archive. - /// </summary> - public class CategoryDto - { - public string Name { get; init; } - public string Color { get; init; } - } - - /// <summary> - /// Time entry label as it is written to the user archive. - /// </summary> - public class LabelDto - { - public string Name { get; init; } - public string Color { get; init; } - } - - - /// <summary> - /// Represents the user who this archive's data is based on. - /// </summary> - public class UserDto - { - /// <inheritdoc cref="UserDto"/> - public UserDto(User user) { - Username = user.Username; - CreatedAt = user.CreatedAt; - } - - /// <summary> - /// UTC date this user was created. - /// </summary> - public DateTime CreatedAt { get; } - - public string Username { get; } - } - - /// <summary> - /// Represents the meta object which contains metdata for this archive. - /// </summary> - public class MetaDto - { - /// <summary> - /// ISO 8601 UTC date string for when this archive was created. - /// </summary> - public string GeneratedAt { get; init; } - - /// <summary> - /// Amount of entries in the archive. - /// </summary> - public int EntryCount { get; set; } - } -} |
