1use crate::models;
12
13#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
14pub struct Client2 {
15 #[serde(rename = "id", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
17 pub id: Option<Option<i32>>,
18 #[serde(rename = "code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
20 pub code: Option<Option<String>>,
21 #[serde(rename = "name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
23 pub name: Option<Option<String>>,
24 #[serde(rename = "type", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
26 pub r#type: Option<Option<Type>>,
27 #[serde(rename = "first_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
29 pub first_name: Option<Option<String>>,
30 #[serde(rename = "last_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
32 pub last_name: Option<Option<String>>,
33 #[serde(rename = "contact_person", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
35 pub contact_person: Option<Option<String>>,
36 #[serde(rename = "vat_number", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
38 pub vat_number: Option<Option<String>>,
39 #[serde(rename = "tax_code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
41 pub tax_code: Option<Option<String>>,
42 #[serde(rename = "address_street", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
44 pub address_street: Option<Option<String>>,
45 #[serde(rename = "address_postal_code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
47 pub address_postal_code: Option<Option<String>>,
48 #[serde(rename = "address_city", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
50 pub address_city: Option<Option<String>>,
51 #[serde(rename = "address_province", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
53 pub address_province: Option<Option<String>>,
54 #[serde(rename = "address_extra", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
56 pub address_extra: Option<Option<String>>,
57 #[serde(rename = "country", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
59 pub country: Option<Option<String>>,
60 #[serde(rename = "country_iso", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
62 pub country_iso: Option<Option<String>>,
63 #[serde(rename = "email", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
65 pub email: Option<Option<String>>,
66 #[serde(rename = "certified_email", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
68 pub certified_email: Option<Option<String>>,
69 #[serde(rename = "phone", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
71 pub phone: Option<Option<String>>,
72 #[serde(rename = "fax", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
74 pub fax: Option<Option<String>>,
75 #[serde(rename = "notes", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
77 pub notes: Option<Option<String>>,
78 #[serde(rename = "default_vat", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
79 pub default_vat: Option<Option<Box<models::VatType>>>,
80 #[serde(rename = "default_payment_terms", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
82 pub default_payment_terms: Option<Option<i32>>,
83 #[serde(rename = "default_payment_terms_type", skip_serializing_if = "Option::is_none")]
85 pub default_payment_terms_type: Option<DefaultPaymentTermsType>,
86 #[serde(rename = "default_payment_method", skip_serializing_if = "Option::is_none")]
87 pub default_payment_method: Option<Box<models::PaymentMethod>>,
88 #[serde(rename = "bank_name", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
90 pub bank_name: Option<Option<String>>,
91 #[serde(rename = "bank_iban", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
93 pub bank_iban: Option<Option<String>>,
94 #[serde(rename = "bank_swift_code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
96 pub bank_swift_code: Option<Option<String>>,
97 #[serde(rename = "shipping_address", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
99 pub shipping_address: Option<Option<String>>,
100 #[serde(rename = "e_invoice", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
102 pub e_invoice: Option<Option<bool>>,
103 #[serde(rename = "ei_code", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
105 pub ei_code: Option<Option<String>>,
106 #[serde(rename = "discount_highlight", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
108 pub discount_highlight: Option<Option<bool>>,
109 #[serde(rename = "default_discount", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
111 pub default_discount: Option<Option<f64>>,
112 #[serde(rename = "has_intent_declaration", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
114 pub has_intent_declaration: Option<Option<bool>>,
115 #[serde(rename = "intent_declaration_protocol_number", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
117 pub intent_declaration_protocol_number: Option<Option<String>>,
118 #[serde(rename = "intent_declaration_protocol_date", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
120 pub intent_declaration_protocol_date: Option<Option<String>>,
121 #[serde(rename = "created_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
123 pub created_at: Option<Option<String>>,
124 #[serde(rename = "updated_at", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
126 pub updated_at: Option<Option<String>>,
127}
128
129impl Client2 {
130 pub fn new() -> Client2 {
131 Client2 {
132 id: None,
133 code: None,
134 name: None,
135 r#type: None,
136 first_name: None,
137 last_name: None,
138 contact_person: None,
139 vat_number: None,
140 tax_code: None,
141 address_street: None,
142 address_postal_code: None,
143 address_city: None,
144 address_province: None,
145 address_extra: None,
146 country: None,
147 country_iso: None,
148 email: None,
149 certified_email: None,
150 phone: None,
151 fax: None,
152 notes: None,
153 default_vat: None,
154 default_payment_terms: None,
155 default_payment_terms_type: None,
156 default_payment_method: None,
157 bank_name: None,
158 bank_iban: None,
159 bank_swift_code: None,
160 shipping_address: None,
161 e_invoice: None,
162 ei_code: None,
163 discount_highlight: None,
164 default_discount: None,
165 has_intent_declaration: None,
166 intent_declaration_protocol_number: None,
167 intent_declaration_protocol_date: None,
168 created_at: None,
169 updated_at: None,
170 }
171 }
172}
173#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
175pub enum Type {
176 #[serde(rename = "company")]
177 Company,
178 #[serde(rename = "person")]
179 Person,
180 #[serde(rename = "pa")]
181 Pa,
182 #[serde(rename = "condo")]
183 Condo,
184}
185
186impl Default for Type {
187 fn default() -> Type {
188 Self::Company
189 }
190}
191#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
193pub enum DefaultPaymentTermsType {
194 #[serde(rename = "standard")]
195 Standard,
196 #[serde(rename = "end_of_month")]
197 EndOfMonth,
198}
199
200impl Default for DefaultPaymentTermsType {
201 fn default() -> DefaultPaymentTermsType {
202 Self::Standard
203 }
204}
205