pipedrive_rs/models/
add_deal_request.rs1#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
15pub struct AddDealRequest {
16 #[serde(rename = "title")]
18 pub title: String,
19 #[serde(rename = "value", skip_serializing_if = "Option::is_none")]
21 pub value: Option<String>,
22 #[serde(rename = "currency", skip_serializing_if = "Option::is_none")]
24 pub currency: Option<String>,
25 #[serde(rename = "user_id", skip_serializing_if = "Option::is_none")]
27 pub user_id: Option<i32>,
28 #[serde(rename = "person_id", skip_serializing_if = "Option::is_none")]
30 pub person_id: Option<i32>,
31 #[serde(rename = "org_id", skip_serializing_if = "Option::is_none")]
33 pub org_id: Option<i32>,
34 #[serde(rename = "pipeline_id", skip_serializing_if = "Option::is_none")]
36 pub pipeline_id: Option<i32>,
37 #[serde(rename = "stage_id", skip_serializing_if = "Option::is_none")]
39 pub stage_id: Option<i32>,
40 #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
42 pub status: Option<Status>,
43 #[serde(rename = "add_time", skip_serializing_if = "Option::is_none")]
45 pub add_time: Option<String>,
46 #[serde(rename = "expected_close_date", skip_serializing_if = "Option::is_none")]
48 pub expected_close_date: Option<String>,
49 #[serde(rename = "probability", skip_serializing_if = "Option::is_none")]
51 pub probability: Option<f32>,
52 #[serde(rename = "lost_reason", skip_serializing_if = "Option::is_none")]
54 pub lost_reason: Option<String>,
55 #[serde(rename = "visible_to", skip_serializing_if = "Option::is_none")]
56 pub visible_to: Option<VisibleTo>,
57}
58
59impl AddDealRequest {
60 pub fn new(title: String) -> AddDealRequest {
61 AddDealRequest {
62 title,
63 value: None,
64 currency: None,
65 user_id: None,
66 person_id: None,
67 org_id: None,
68 pipeline_id: None,
69 stage_id: None,
70 status: None,
71 add_time: None,
72 expected_close_date: None,
73 probability: None,
74 lost_reason: None,
75 visible_to: None,
76 }
77 }
78}
79
80#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
82pub enum Status {
83 #[serde(rename = "open")]
84 Open,
85 #[serde(rename = "won")]
86 Won,
87 #[serde(rename = "lost")]
88 Lost,
89 #[serde(rename = "deleted")]
90 Deleted,
91}
92
93impl Default for Status {
94 fn default() -> Status {
95 Self::Open
96 }
97}
98#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
100pub enum VisibleTo {
101 #[serde(rename = "1")]
102 Variant1,
103 #[serde(rename = "3")]
104 Variant3,
105 #[serde(rename = "5")]
106 Variant5,
107 #[serde(rename = "7")]
108 Variant7,
109}
110
111impl Default for VisibleTo {
112 fn default() -> VisibleTo {
113 Self::Variant1
114 }
115}
116