From 38c571362b673d17ab95fcbe9a0c4fb3c13561c2 Mon Sep 17 00:00:00 2001 From: Daan Boerlage Date: Tue, 21 Jan 2025 20:36:56 +0100 Subject: [PATCH] Add additional fields to the issue type --- src/types/issue.rs | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/types/issue.rs b/src/types/issue.rs index 21383c3..04ec6bc 100644 --- a/src/types/issue.rs +++ b/src/types/issue.rs @@ -21,6 +21,8 @@ pub struct JiraIssueResponseFields { pub creator: Person, #[serde(rename = "duedate")] pub due_date: Option, + pub comment: Option, + pub votes: Votes, } #[derive(Debug, Deserialize, Serialize)] @@ -43,7 +45,40 @@ pub struct Person { #[serde(rename = "accountId")] pub account_id: String, #[serde(rename = "emailAddress")] - pub email_address: String, + pub email_address: Option, +} + +#[derive(Debug, Deserialize, Serialize)] +pub struct Comments { + #[serde(rename = "self")] + pub href: String, + pub total: u32, + #[serde(rename = "maxResults")] + pub max_results: u32, + #[serde(rename = "startAt")] + pub start_at: u32, + pub comments: Vec, +} + +#[derive(Debug, Deserialize, Serialize)] +pub struct Comment { + #[serde(rename = "self")] + pub href: String, + pub id: String, + pub author: Person, + pub body: String, + #[serde(rename = "updateAuthor")] + pub update_author: Person, +} + +#[derive(Debug, Deserialize, Serialize)] +pub struct Votes { + #[serde(rename = "self")] + pub href: String, + #[serde(rename = "votes")] + pub count: i32, + #[serde(rename = "hasVoted")] + pub has_voted: bool, } pub fn display_issues_pretty(issues: &[JiraIssue]) -> Result<(), Box> {