Capture additional fields on the list command
This commit is contained in:
parent
f0aaf0a7e7
commit
a3ba3cd511
1 changed files with 30 additions and 4 deletions
|
@ -2,17 +2,25 @@ use crate::jira_config::JiraConfig;
|
|||
use reqwest::header::{HeaderMap, HeaderValue, CONTENT_TYPE};
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Deserialize, Serialize)]
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
struct JiraIssue {
|
||||
key: String,
|
||||
#[serde(rename = "self")]
|
||||
href: String,
|
||||
fields: JiraIssueResponseFields,
|
||||
}
|
||||
|
||||
#[derive(Deserialize, Serialize)]
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
struct JiraIssueResponseFields {
|
||||
summary: String,
|
||||
status: Status,
|
||||
created: String,
|
||||
created: chrono::DateTime<chrono::Utc>,
|
||||
priority: Priority,
|
||||
assignee: Person,
|
||||
reporter: Person,
|
||||
creator: Person,
|
||||
#[serde(rename = "duedate")]
|
||||
due_date: Option<chrono::NaiveDate>,
|
||||
}
|
||||
|
||||
#[derive(Deserialize)]
|
||||
|
@ -21,11 +29,29 @@ struct JiraSearchResponse {
|
|||
total: u32,
|
||||
}
|
||||
|
||||
#[derive(Deserialize, Serialize)]
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
struct Status {
|
||||
name: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
struct Priority {
|
||||
name: String,
|
||||
id: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Deserialize, Serialize)]
|
||||
struct Person {
|
||||
#[serde(rename = "self")]
|
||||
href: String,
|
||||
#[serde(rename = "displayName")]
|
||||
display_name: String,
|
||||
#[serde(rename = "accountId")]
|
||||
account_id: String,
|
||||
#[serde(rename = "emailAddress")]
|
||||
email_address: String,
|
||||
}
|
||||
|
||||
async fn list_jira_issues(
|
||||
config: &JiraConfig,
|
||||
) -> Result<JiraSearchResponse, Box<dyn std::error::Error>> {
|
||||
|
|
Loading…
Reference in a new issue