nautobot_openapi/models/
approval_workflow.rs1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct ApprovalWorkflow {
15 #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
16 pub id: Option<uuid::Uuid>,
17 #[serde(rename = "object_type", skip_serializing_if = "Option::is_none")]
18 pub object_type: Option<String>,
19 #[serde(rename = "display", skip_serializing_if = "Option::is_none")]
21 pub display: Option<String>,
22 #[serde(rename = "url", skip_serializing_if = "Option::is_none")]
23 pub url: Option<String>,
24 #[serde(rename = "natural_slug", skip_serializing_if = "Option::is_none")]
25 pub natural_slug: Option<String>,
26 #[serde(rename = "object_under_review_content_type")]
27 pub object_under_review_content_type: String,
28 #[serde(
29 rename = "decision_date",
30 default,
31 with = "::serde_with::rust::double_option",
32 skip_serializing_if = "Option::is_none"
33 )]
34 pub decision_date: Option<Option<String>>,
35 #[serde(rename = "object_under_review_object_id")]
36 pub object_under_review_object_id: uuid::Uuid,
37 #[serde(rename = "current_state", skip_serializing_if = "Option::is_none")]
38 pub current_state: Option<crate::models::ApprovalWorkflowStateChoices>,
39 #[serde(rename = "user_name", skip_serializing_if = "Option::is_none")]
40 pub user_name: Option<String>,
41 #[serde(
42 rename = "approval_workflow_definition",
43 default,
44 with = "::serde_with::rust::double_option",
45 skip_serializing_if = "Option::is_none"
46 )]
47 pub approval_workflow_definition:
48 Option<Option<Box<crate::models::ApprovalWorkflowApprovalWorkflowDefinition>>>,
49 #[serde(
50 rename = "user",
51 default,
52 with = "::serde_with::rust::double_option",
53 skip_serializing_if = "Option::is_none"
54 )]
55 pub user: Option<Option<Box<crate::models::ApprovalWorkflowUser>>>,
56 #[serde(
57 rename = "created",
58 default,
59 with = "::serde_with::rust::double_option",
60 skip_serializing_if = "Option::is_none"
61 )]
62 pub created: Option<Option<String>>,
63 #[serde(
64 rename = "last_updated",
65 default,
66 with = "::serde_with::rust::double_option",
67 skip_serializing_if = "Option::is_none"
68 )]
69 pub last_updated: Option<Option<String>>,
70 #[serde(rename = "notes_url", skip_serializing_if = "Option::is_none")]
71 pub notes_url: Option<String>,
72 #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
73 pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
74}
75
76impl ApprovalWorkflow {
77 pub fn new(
79 object_under_review_content_type: String,
80 object_under_review_object_id: uuid::Uuid,
81 ) -> ApprovalWorkflow {
82 ApprovalWorkflow {
83 id: None,
84 object_type: None,
85 display: None,
86 url: None,
87 natural_slug: None,
88 object_under_review_content_type,
89 decision_date: None,
90 object_under_review_object_id,
91 current_state: None,
92 user_name: None,
93 approval_workflow_definition: None,
94 user: None,
95 created: None,
96 last_updated: None,
97 notes_url: None,
98 custom_fields: None,
99 }
100 }
101}