1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct UserNoId {
16 #[serde(rename = "org_id", skip_serializing_if = "Option::is_none")]
17 pub org_id: Option<String>,
18 #[serde(rename = "server_id", skip_serializing_if = "Option::is_none")]
19 pub server_id: Option<String>,
20 #[serde(rename = "email", skip_serializing_if = "Option::is_none")]
21 pub email: Option<String>,
22 #[serde(rename = "autoalert", skip_serializing_if = "Option::is_none")]
23 pub autoalert: Option<bool>,
24 #[serde(rename = "authkey", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
26 pub authkey: Option<Option<String>>,
27 #[serde(rename = "invited_by", skip_serializing_if = "Option::is_none")]
28 pub invited_by: Option<String>,
29 #[serde(rename = "gpgkey", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
30 pub gpgkey: Option<Option<String>>,
31 #[serde(rename = "certif_public", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
32 pub certif_public: Option<Option<String>>,
33 #[serde(rename = "nids_sid", skip_serializing_if = "Option::is_none")]
34 pub nids_sid: Option<String>,
35 #[serde(rename = "termsaccepted", skip_serializing_if = "Option::is_none")]
36 pub termsaccepted: Option<bool>,
37 #[serde(rename = "newsread", skip_serializing_if = "Option::is_none")]
38 pub newsread: Option<String>,
39 #[serde(rename = "role_id", skip_serializing_if = "Option::is_none")]
40 pub role_id: Option<String>,
41 #[serde(rename = "change_pw", skip_serializing_if = "Option::is_none")]
43 pub change_pw: Option<ChangePw>,
44 #[serde(rename = "contactalert", skip_serializing_if = "Option::is_none")]
45 pub contactalert: Option<bool>,
46 #[serde(rename = "disabled", skip_serializing_if = "Option::is_none")]
47 pub disabled: Option<bool>,
48 #[serde(rename = "expiration", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
49 pub expiration: Option<Option<String>>,
50 #[serde(rename = "current_login", skip_serializing_if = "Option::is_none")]
51 pub current_login: Option<String>,
52 #[serde(rename = "last_login", skip_serializing_if = "Option::is_none")]
53 pub last_login: Option<String>,
54 #[serde(rename = "force_logout", skip_serializing_if = "Option::is_none")]
55 pub force_logout: Option<bool>,
56 #[serde(rename = "date_created", skip_serializing_if = "Option::is_none")]
57 pub date_created: Option<String>,
58 #[serde(rename = "date_modified", skip_serializing_if = "Option::is_none")]
59 pub date_modified: Option<String>,
60}
61
62impl UserNoId {
63 pub fn new() -> UserNoId {
64 UserNoId {
65 org_id: None,
66 server_id: None,
67 email: None,
68 autoalert: None,
69 authkey: None,
70 invited_by: None,
71 gpgkey: None,
72 certif_public: None,
73 nids_sid: None,
74 termsaccepted: None,
75 newsread: None,
76 role_id: None,
77 change_pw: None,
78 contactalert: None,
79 disabled: None,
80 expiration: None,
81 current_login: None,
82 last_login: None,
83 force_logout: None,
84 date_created: None,
85 date_modified: None,
86 }
87 }
88}
89#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
91pub enum ChangePw {
92 #[serde(rename = "0")]
93 Variant0,
94 #[serde(rename = "1")]
95 Variant1,
96}
97
98impl Default for ChangePw {
99 fn default() -> ChangePw {
100 Self::Variant0
101 }
102}
103