complete refactor
This commit is contained in:
197
Blueberry.Redmine/Dto/DetailedIssue.cs
Normal file
197
Blueberry.Redmine/Dto/DetailedIssue.cs
Normal file
@@ -0,0 +1,197 @@
|
||||
#pragma warning disable CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring as nullable.
|
||||
using System.Text.Json.Serialization;
|
||||
|
||||
namespace Blueberry.Redmine.Dto
|
||||
{
|
||||
public class DetailedIssue
|
||||
{
|
||||
public class AssignedTo
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
public class Author
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
public class CustomField
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("value")]
|
||||
public string Value { get; set; }
|
||||
}
|
||||
|
||||
public class Detail
|
||||
{
|
||||
[JsonPropertyName("property")]
|
||||
public string Property { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
|
||||
[JsonPropertyName("old_value")]
|
||||
public string OldValue { get; set; }
|
||||
|
||||
[JsonPropertyName("new_value")]
|
||||
public string NewValue { get; set; }
|
||||
}
|
||||
|
||||
public class Issue
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("project")]
|
||||
public Project Project { get; set; }
|
||||
|
||||
[JsonPropertyName("tracker")]
|
||||
public Tracker Tracker { get; set; }
|
||||
|
||||
[JsonPropertyName("status")]
|
||||
public Status Status { get; set; }
|
||||
|
||||
[JsonPropertyName("priority")]
|
||||
public Priority Priority { get; set; }
|
||||
|
||||
[JsonPropertyName("author")]
|
||||
public Author Author { get; set; }
|
||||
|
||||
[JsonPropertyName("assigned_to")]
|
||||
public AssignedTo AssignedTo { get; set; }
|
||||
|
||||
[JsonPropertyName("subject")]
|
||||
public string Subject { get; set; }
|
||||
|
||||
[JsonPropertyName("description")]
|
||||
public string Description { get; set; }
|
||||
|
||||
[JsonPropertyName("start_date")]
|
||||
public string StartDate { get; set; }
|
||||
|
||||
[JsonPropertyName("due_date")]
|
||||
public object DueDate { get; set; }
|
||||
|
||||
[JsonPropertyName("done_ratio")]
|
||||
public int DoneRatio { get; set; }
|
||||
|
||||
[JsonPropertyName("is_private")]
|
||||
public bool IsPrivate { get; set; }
|
||||
|
||||
[JsonPropertyName("estimated_hours")]
|
||||
public object EstimatedHours { get; set; }
|
||||
|
||||
[JsonPropertyName("total_estimated_hours")]
|
||||
public object TotalEstimatedHours { get; set; }
|
||||
|
||||
[JsonPropertyName("spent_hours")]
|
||||
public double SpentHours { get; set; }
|
||||
|
||||
[JsonPropertyName("total_spent_hours")]
|
||||
public double TotalSpentHours { get; set; }
|
||||
|
||||
[JsonPropertyName("custom_fields")]
|
||||
public List<CustomField> CustomFields { get; set; }
|
||||
|
||||
[JsonPropertyName("created_on")]
|
||||
public DateTime CreatedOn { get; set; }
|
||||
|
||||
[JsonPropertyName("updated_on")]
|
||||
public DateTime UpdatedOn { get; set; }
|
||||
|
||||
[JsonPropertyName("closed_on")]
|
||||
public object ClosedOn { get; set; }
|
||||
|
||||
[JsonPropertyName("journals")]
|
||||
public List<Journal> Journals { get; set; }
|
||||
}
|
||||
|
||||
public class Journal
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("user")]
|
||||
public User User { get; set; }
|
||||
|
||||
[JsonPropertyName("notes")]
|
||||
public string Notes { get; set; }
|
||||
|
||||
[JsonPropertyName("created_on")]
|
||||
public DateTime CreatedOn { get; set; }
|
||||
|
||||
[JsonPropertyName("private_notes")]
|
||||
public bool PrivateNotes { get; set; }
|
||||
|
||||
[JsonPropertyName("details")]
|
||||
public List<Detail> Details { get; set; }
|
||||
}
|
||||
|
||||
public class Priority
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
public class Project
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
public class Root
|
||||
{
|
||||
[JsonPropertyName("issue")]
|
||||
public Issue Issue { get; set; }
|
||||
}
|
||||
|
||||
public class Status
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
public class Tracker
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
public class User
|
||||
{
|
||||
[JsonPropertyName("id")]
|
||||
public int Id { get; set; }
|
||||
|
||||
[JsonPropertyName("name")]
|
||||
public string Name { get; set; }
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
#pragma warning restore CS8618 // Non-nullable field must contain a non-null value when exiting constructor. Consider adding the 'required' modifier or declaring as nullable.
|
||||
Reference in New Issue
Block a user