wecom_rs/client/contact/linked_corp/
model.rs

1use crate::client::common::model::ExtAttributes;
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Deserialize, Serialize, Default)]
5pub struct ResponseAgentPermList {
6    /// 可见的userids,是用 CorpId + ’/‘ + USERID 拼成的字符串
7    #[serde(skip_serializing_if = "Option::is_none", rename = "userids")]
8    pub user_ids: Option<Vec<String>>,
9    /// 可见的department_ids,是用 linkedid + ’/‘ + department_id 拼成的字符串
10    #[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    /// 成员UserID。对应管理端的帐号,企业内必须唯一。不区分大小写,长度为1~64个字节
17    #[serde(rename = "userid")]
18    pub user_id: String,
19    ///	成员真实名称
20    pub name: String,
21    /// 手机号码
22    pub mobile: String,
23    ///	成员所属部门id列表,这个字段会返回在应用可见范围内,该用户所在的所有互联企业的部门
24    #[serde(skip_serializing_if = "Option::is_none")]
25    pub department: Option<Vec<String>>,
26    /// 职务信息
27    pub position: String,
28    /// 邮箱
29    pub email: String,
30    ///	座机
31    pub telephone: String,
32    ///	所属企业的corpid
33    pub corpid: String,
34    ///	扩展属性
35    pub extattr: Option<ExtAttributes>,
36}
37
38#[derive(Debug, Deserialize, Serialize, Default)]
39pub struct UserSimpleInfo {
40    /// 成员UserID。对应管理端的帐号,企业内必须唯一。不区分大小写,长度为1~64个字节
41    #[serde(rename = "userid")]
42    pub user_id: String,
43    ///	成员真实名称
44    pub name: String,
45    ///	成员所属部门id列表,这个字段会返回在应用可见范围内,该用户所在的所有互联企业的部门
46    #[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}