Initial commit.
This commit is contained in:
104
Models/JiraResponse.cs
Normal file
104
Models/JiraResponse.cs
Normal file
@@ -0,0 +1,104 @@
|
||||
namespace TriliumMind.Models;
|
||||
|
||||
public class JiraResponse
|
||||
{
|
||||
public string expand { get; set; }
|
||||
public int startAt { get; set; }
|
||||
public int maxResults { get; set; }
|
||||
public int total { get; set; }
|
||||
public Issue[] issues { get; set; }
|
||||
}
|
||||
|
||||
public class Issue
|
||||
{
|
||||
public string expand { get; set; }
|
||||
public string id { get; set; }
|
||||
public string self { get; set; }
|
||||
public string key { get; set; }
|
||||
public Fields fields { get; set; }
|
||||
}
|
||||
|
||||
public class Fields
|
||||
{
|
||||
public string summary { get; set; } // Title
|
||||
public Assignee assignee { get; set; }
|
||||
public Reporter reporter { get; set; }
|
||||
public string updated { get; set; }
|
||||
public Status status { get; set; }
|
||||
public Issuetype issuetype { get; set; }
|
||||
public DateTimeOffset UpdatedAt
|
||||
{
|
||||
get
|
||||
{
|
||||
// "2025-09-03T15:31:51.000+0900" → "2025-09-03T15:31:51.000+09:00"
|
||||
var fixedValue = updated.Insert(updated.Length - 2, ":");
|
||||
return DateTimeOffset.Parse(fixedValue);
|
||||
}
|
||||
}
|
||||
public DateTime? duedate { get; set; }
|
||||
public Issue parent { get; set; }
|
||||
public string customfield_10808 { get; set; } // Epic key
|
||||
}
|
||||
|
||||
public class Assignee
|
||||
{
|
||||
public string self { get; set; }
|
||||
public string name { get; set; }
|
||||
public string key { get; set; }
|
||||
public string emailAddress { get; set; }
|
||||
public Avatarurls avatarUrls { get; set; }
|
||||
public string displayName { get; set; } // Korean name
|
||||
public bool active { get; set; }
|
||||
public string timeZone { get; set; }
|
||||
}
|
||||
|
||||
public class Reporter
|
||||
{
|
||||
public string self { get; set; }
|
||||
public string name { get; set; }
|
||||
public string key { get; set; }
|
||||
public string emailAddress { get; set; }
|
||||
public Avatarurls avatarUrls { get; set; }
|
||||
public string displayName { get; set; } // Korean name
|
||||
public bool active { get; set; }
|
||||
public string timeZone { get; set; }
|
||||
}
|
||||
|
||||
public class Avatarurls
|
||||
{
|
||||
public string _48x48 { get; set; }
|
||||
public string _24x24 { get; set; }
|
||||
public string _16x16 { get; set; }
|
||||
public string _32x32 { get; set; }
|
||||
}
|
||||
|
||||
public class Status
|
||||
{
|
||||
public string self { get; set; }
|
||||
public string description { get; set; }
|
||||
public string iconUrl { get; set; }
|
||||
public string name { get; set; } // Status: Open InProgress ...
|
||||
public string id { get; set; }
|
||||
public Statuscategory statusCategory { get; set; }
|
||||
}
|
||||
|
||||
public class Statuscategory
|
||||
{
|
||||
public string self { get; set; }
|
||||
public int id { get; set; }
|
||||
public string key { get; set; }
|
||||
public string colorName { get; set; }
|
||||
public string name { get; set; }
|
||||
}
|
||||
|
||||
public class Issuetype
|
||||
{
|
||||
public string self { get; set; }
|
||||
public string id { get; set; }
|
||||
public string description { get; set; }
|
||||
public string iconUrl { get; set; }
|
||||
public string name { get; set; } // Type
|
||||
public bool subtask { get; set; }
|
||||
public int avatarId { get; set; }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user