wecom_rs/client/external_contact/enterprise_service/
dto.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Deserialize, Serialize, Default)]
4pub struct ParamsContactWayCreate {
5 #[serde(rename = "type")]
7 pub kind: i32,
8 pub scene: i32,
10 #[serde(skip_serializing_if = "Option::is_none")]
12 pub style: Option<i32>,
13 #[serde(skip_serializing_if = "Option::is_none")]
15 pub remark: Option<String>,
16 #[serde(skip_serializing_if = "Option::is_none")]
18 pub skip_verify: Option<bool>,
19 #[serde(skip_serializing_if = "Option::is_none")]
21 pub state: Option<String>,
22 #[serde(skip_serializing_if = "Option::is_none")]
24 pub user: Option<Vec<String>>,
25 #[serde(skip_serializing_if = "Option::is_none")]
27 pub party: Option<Vec<i32>>,
28 #[serde(skip_serializing_if = "Option::is_none")]
30 pub is_temp: Option<bool>,
31 #[serde(skip_serializing_if = "Option::is_none")]
33 pub expires_in: Option<i64>,
34 #[serde(skip_serializing_if = "Option::is_none")]
36 pub chat_expires_in: Option<i64>,
37 #[serde(skip_serializing_if = "Option::is_none")]
39 pub unionid: Option<String>,
40 #[serde(skip_serializing_if = "Option::is_none")]
42 pub conclusions: Option<Conclusion>,
43}
44
45#[derive(Debug, Deserialize, Serialize, Default)]
51pub struct Conclusion {
52 #[serde(skip_serializing_if = "Option::is_none")]
53 pub text: Option<Text>,
54 #[serde(skip_serializing_if = "Option::is_none")]
55 pub image: Option<Image>,
56 #[serde(skip_serializing_if = "Option::is_none")]
57 pub link: Option<Link>,
58 #[serde(skip_serializing_if = "Option::is_none")]
59 pub miniprogram: Option<MiniProgram>,
60}
61
62#[derive(Debug, Deserialize, Serialize, Default)]
63pub struct Text {
64 pub content: String,
66}
67
68#[derive(Debug, Deserialize, Serialize, Default)]
69pub struct Image {
70 pub media_id: String,
72 pub pic_url: String,
74}
75
76#[derive(Debug, Deserialize, Serialize, Default)]
77pub struct Link {
78 pub title: String,
80 #[serde(rename = "picurl")]
82 pub pic_url: String,
83 pub desc: String,
85 pub url: String,
87}
88
89#[derive(Debug, Deserialize, Serialize, Default)]
90pub struct MiniProgram {
91 pub title: String,
93 pub pic_media_id: String,
95 #[serde(rename = "appid")]
97 pub app_id: String,
98 pub page: String,
100}
101
102#[derive(Debug, Deserialize, Serialize, Default)]
103pub struct ParamsContactWayList {
104 #[serde(skip_serializing_if = "Option::is_none")]
106 pub start_time: Option<i64>,
107 #[serde(skip_serializing_if = "Option::is_none")]
109 pub end_time: Option<i64>,
110 #[serde(skip_serializing_if = "Option::is_none")]
112 pub cursor: Option<String>,
113 #[serde(skip_serializing_if = "Option::is_none")]
115 pub limit: Option<i64>,
116}
117
118#[derive(Debug, Deserialize, Serialize, Default)]
119pub struct ParamsContactWayUpdate {
120 pub config_id: String,
122 #[serde(skip_serializing_if = "Option::is_none")]
124 pub style: Option<i32>,
125 #[serde(skip_serializing_if = "Option::is_none")]
127 pub remark: Option<String>,
128 #[serde(skip_serializing_if = "Option::is_none")]
130 pub skip_verify: Option<bool>,
131 #[serde(skip_serializing_if = "Option::is_none")]
133 pub state: Option<String>,
134 #[serde(skip_serializing_if = "Option::is_none")]
136 pub user: Option<Vec<String>>,
137 #[serde(skip_serializing_if = "Option::is_none")]
139 pub party: Option<Vec<i32>>,
140 #[serde(skip_serializing_if = "Option::is_none")]
142 pub expires_in: Option<i64>,
143 #[serde(skip_serializing_if = "Option::is_none")]
145 pub chat_expires_in: Option<i64>,
146 #[serde(skip_serializing_if = "Option::is_none")]
148 pub unionid: Option<String>,
149 #[serde(skip_serializing_if = "Option::is_none")]
151 pub conclusions: Option<Conclusion>,
152}