1#[derive(Clone, Debug, PartialEq, Default, Serialize, Deserialize)]
14pub struct Location {
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(
27 rename = "tree_depth",
28 default,
29 with = "::serde_with::rust::double_option",
30 skip_serializing_if = "Option::is_none"
31 )]
32 pub tree_depth: Option<Option<i32>>,
33 #[serde(
34 rename = "time_zone",
35 default,
36 with = "::serde_with::rust::double_option",
37 skip_serializing_if = "Option::is_none"
38 )]
39 pub time_zone: Option<Option<String>>,
40 #[serde(rename = "circuit_count", skip_serializing_if = "Option::is_none")]
41 pub circuit_count: Option<i32>,
42 #[serde(rename = "device_count", skip_serializing_if = "Option::is_none")]
43 pub device_count: Option<i32>,
44 #[serde(rename = "prefix_count", skip_serializing_if = "Option::is_none")]
45 pub prefix_count: Option<i32>,
46 #[serde(rename = "rack_count", skip_serializing_if = "Option::is_none")]
47 pub rack_count: Option<i32>,
48 #[serde(
49 rename = "virtual_machine_count",
50 skip_serializing_if = "Option::is_none"
51 )]
52 pub virtual_machine_count: Option<i32>,
53 #[serde(rename = "vlan_count", skip_serializing_if = "Option::is_none")]
54 pub vlan_count: Option<i32>,
55 #[serde(rename = "name")]
56 pub name: String,
57 #[serde(rename = "description", skip_serializing_if = "Option::is_none")]
58 pub description: Option<String>,
59 #[serde(rename = "facility", skip_serializing_if = "Option::is_none")]
61 pub facility: Option<String>,
62 #[serde(
64 rename = "asn",
65 default,
66 with = "::serde_with::rust::double_option",
67 skip_serializing_if = "Option::is_none"
68 )]
69 pub asn: Option<Option<i64>>,
70 #[serde(rename = "physical_address", skip_serializing_if = "Option::is_none")]
71 pub physical_address: Option<String>,
72 #[serde(rename = "shipping_address", skip_serializing_if = "Option::is_none")]
73 pub shipping_address: Option<String>,
74 #[serde(
76 rename = "latitude",
77 default,
78 with = "::serde_with::rust::double_option",
79 skip_serializing_if = "Option::is_none"
80 )]
81 pub latitude: Option<Option<String>>,
82 #[serde(
84 rename = "longitude",
85 default,
86 with = "::serde_with::rust::double_option",
87 skip_serializing_if = "Option::is_none"
88 )]
89 pub longitude: Option<Option<String>>,
90 #[serde(rename = "contact_name", skip_serializing_if = "Option::is_none")]
91 pub contact_name: Option<String>,
92 #[serde(rename = "contact_phone", skip_serializing_if = "Option::is_none")]
93 pub contact_phone: Option<String>,
94 #[serde(rename = "contact_email", skip_serializing_if = "Option::is_none")]
95 pub contact_email: Option<String>,
96 #[serde(rename = "comments", skip_serializing_if = "Option::is_none")]
97 pub comments: Option<String>,
98 #[serde(
99 rename = "parent",
100 default,
101 with = "::serde_with::rust::double_option",
102 skip_serializing_if = "Option::is_none"
103 )]
104 pub parent: Option<Option<Box<crate::models::ApprovalWorkflowUser>>>,
105 #[serde(rename = "location_type")]
106 pub location_type: Box<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>,
107 #[serde(rename = "status")]
108 pub status: Box<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>,
109 #[serde(
110 rename = "tenant",
111 default,
112 with = "::serde_with::rust::double_option",
113 skip_serializing_if = "Option::is_none"
114 )]
115 pub tenant: Option<Option<Box<crate::models::ApprovalWorkflowUser>>>,
116 #[serde(
117 rename = "created",
118 default,
119 with = "::serde_with::rust::double_option",
120 skip_serializing_if = "Option::is_none"
121 )]
122 pub created: Option<Option<String>>,
123 #[serde(
124 rename = "last_updated",
125 default,
126 with = "::serde_with::rust::double_option",
127 skip_serializing_if = "Option::is_none"
128 )]
129 pub last_updated: Option<Option<String>>,
130 #[serde(rename = "notes_url", skip_serializing_if = "Option::is_none")]
131 pub notes_url: Option<String>,
132 #[serde(rename = "custom_fields", skip_serializing_if = "Option::is_none")]
133 pub custom_fields: Option<::std::collections::HashMap<String, serde_json::Value>>,
134 #[serde(rename = "tags", skip_serializing_if = "Option::is_none")]
135 pub tags: Option<Vec<crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage>>,
136}
137
138impl Location {
139 pub fn new(
141 name: String,
142 location_type: crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage,
143 status: crate::models::ApprovalWorkflowStageResponseApprovalWorkflowStage,
144 ) -> Location {
145 Location {
146 id: None,
147 object_type: None,
148 display: None,
149 url: None,
150 natural_slug: None,
151 tree_depth: None,
152 time_zone: None,
153 circuit_count: None,
154 device_count: None,
155 prefix_count: None,
156 rack_count: None,
157 virtual_machine_count: None,
158 vlan_count: None,
159 name,
160 description: None,
161 facility: None,
162 asn: None,
163 physical_address: None,
164 shipping_address: None,
165 latitude: None,
166 longitude: None,
167 contact_name: None,
168 contact_phone: None,
169 contact_email: None,
170 comments: None,
171 parent: None,
172 location_type: Box::new(location_type),
173 status: Box::new(status),
174 tenant: None,
175 created: None,
176 last_updated: None,
177 notes_url: None,
178 custom_fields: None,
179 tags: None,
180 }
181 }
182}