jira_core/model/
version.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Clone, Serialize, Deserialize, Default)]
4#[serde(rename_all = "camelCase")]
5pub struct ProjectVersion {
6 #[serde(default)]
7 pub id: String,
8 pub name: String,
9 #[serde(default)]
10 pub description: Option<String>,
11 #[serde(default)]
12 pub archived: bool,
13 #[serde(default)]
14 pub released: bool,
15 #[serde(default)]
16 pub release_date: Option<String>,
17 #[serde(default)]
18 pub start_date: Option<String>,
19}
20
21#[derive(Debug, Clone, Serialize, Deserialize, Default)]
22#[serde(rename_all = "camelCase")]
23pub struct UpdateProjectVersionRequest {
24 #[serde(skip_serializing_if = "Option::is_none")]
25 pub name: Option<String>,
26 #[serde(skip_serializing_if = "Option::is_none")]
27 pub description: Option<String>,
28 #[serde(skip_serializing_if = "Option::is_none")]
29 pub archived: Option<bool>,
30 #[serde(skip_serializing_if = "Option::is_none")]
31 pub released: Option<bool>,
32 #[serde(skip_serializing_if = "Option::is_none")]
33 pub release_date: Option<String>,
34 #[serde(skip_serializing_if = "Option::is_none")]
35 pub start_date: Option<String>,
36}
37
38#[derive(Debug, Clone, Serialize, Deserialize, Default)]
39#[serde(rename_all = "camelCase")]
40pub struct CreateProjectVersionRequest {
41 pub name: String,
42 pub project: String,
43 #[serde(skip_serializing_if = "Option::is_none")]
44 pub description: Option<String>,
45 #[serde(default)]
46 pub archived: bool,
47 #[serde(default)]
48 pub released: bool,
49 #[serde(skip_serializing_if = "Option::is_none")]
50 pub release_date: Option<String>,
51 #[serde(skip_serializing_if = "Option::is_none")]
52 pub start_date: Option<String>,
53}