/
ivanstrike
/
tasker
Обзор
Документация
Войти
/
ivanstrike
/
tasker
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
Lab3/Client/Models/TaskModels.cs
84 строки
2 KB
ivanstrike
Lab3
13 дек 2025, 11:15
13 дек 2025, 11:15
15c0fa5
Код
Авторство
О чём код?
using System.Text.Json.Serialization; namespace TaskApiClient.Models; [JsonConverter(typeof(JsonStringEnumConverter))] public enum TaskStatus { [JsonPropertyName("todo")] Todo, [JsonPropertyName("in_progress")] InProgress, [JsonPropertyName("done")] Done } [JsonConverter(typeof(JsonStringEnumConverter))] public enum TaskPriority { [JsonPropertyName("low")] Low, [JsonPropertyName("medium")] Medium, [JsonPropertyName("high")] High } // V1 Models public record TaskCreateV1( string Title, int ProjectId, string? Description = null, TaskStatus Status = TaskStatus.Todo, DateTime? DueDate = null, int? AssigneeId = null ); public record TaskUpdateV1( string? Title = null, string? Description = null, TaskStatus? Status = null, DateTime? DueDate = null, int? AssigneeId = null ); public record TaskOutV1( int Id, string Title, int ProjectId, string? Description, TaskStatus Status, DateTime? DueDate, int? AssigneeId ); // V2 Models (с priority) public record TaskCreateV2( string Title, int ProjectId, string? Description = null, TaskStatus Status = TaskStatus.Todo, TaskPriority Priority = TaskPriority.Medium, DateTime? DueDate = null, int? AssigneeId = null ); public record TaskUpdateV2( string? Title = null, string? Description = null, TaskStatus? Status = null, TaskPriority? Priority = null, DateTime? DueDate = null, int? AssigneeId = null ); public record TaskOutV2( int Id, string Title, int ProjectId, string? Description, TaskStatus Status, TaskPriority Priority, DateTime? DueDate, int? AssigneeId );