wecom_rs/client/contact/linked_corp/
model.rs1use crate::client::common::model::ExtAttributes;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Deserialize, Serialize, Default)]
5pub struct ResponseAgentPermList {
6 #[serde(skip_serializing_if = "Option::is_none", rename = "userids")]
8 pub user_ids: Option<Vec<String>>,
9 #[serde(skip_serializing_if = "Option::is_none")]
11 pub department_ids: Option<Vec<String>>,
12}
13
14#[derive(Debug, Deserialize, Serialize, Default)]
15pub struct UserInfo {
16 #[serde(rename = "userid")]
18 pub user_id: String,
19 pub name: String,
21 pub mobile: String,
23 #[serde(skip_serializing_if = "Option::is_none")]
25 pub department: Option<Vec<String>>,
26 pub position: String,
28 pub email: String,
30 pub telephone: String,
32 pub corpid: String,
34 pub extattr: Option<ExtAttributes>,
36}
37
38#[derive(Debug, Deserialize, Serialize, Default)]
39pub struct UserSimpleInfo {
40 #[serde(rename = "userid")]
42 pub user_id: String,
43 pub name: String,
45 #[serde(skip_serializing_if = "Option::is_none")]
47 pub department: Option<Vec<String>>,
48 pub corpid: String,
49}
50
51#[derive(Debug, Deserialize, Serialize, Default)]
52pub struct DepartmentInfo {
53 #[serde(rename = "department_id")]
54 pub id: String,
55 #[serde(rename = "department_name")]
56 pub name: String,
57 #[serde(rename = "parentid")]
58 pub parent_id: String,
59 pub order: i64,
60}