using System.Collections.Generic;
using System.Collections;
namespace BP.GPM.DTalk.DINGTalk
{
///
/// 获取部门列表
///
public class DepartMent_List
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
///
/// 部门列表数据。以部门的order字段从小到大排列
///
public List department { get; set; }
}
///
/// 部门列表明细
///
public class DepartMentDetailInfo
{
///
/// 部门id
///
public string id { get; set; }
///
/// 部门名称
///
public string name { get; set; }
///
/// 父部门id,根部门为1
///
public string parentid { get; set; }
///
/// 是否同步创建一个关联此部门的企业群, true表示是, false表示不是
///
public string createDeptGroup { get; set; }
///
/// 当群已经创建后,是否有新人加入部门会自动加入该群, true表示是, false表示不是
///
public string autoAddUser { get; set; }
}
///
/// 创建部门后消息
///
public class CreateDepartMent_PostVal
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
///
/// 创建的部门id
///
public string id { get; set; }
}
///
/// 新增人员后消息
///
public class CreateUser_PostVal
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
///
/// 员工唯一标识userid
///
public string userid { get; set; }
}
public class DingUserInfo
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
public UserInfoResult result { get; set; }
}
public class UserInfoResult
{
public string admin { get; set; }
public string remark { get; set; }
public string email { get; set; }
public string mobile { get; set; }
}
public class DingAccessToken
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
public string access_token { get; set; }
public string expires_in { get; set; }
}
///
/// 部门人员列表
///
public class DepartMentUser_List
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
///
/// 在分页查询时返回,代表是否还有下一页更多数据
///
public string hasMore { get; set; }
///
/// 成员列表
///
public List userlist { get; set; }
}
///
/// 部门人员详细信息
///
public class DepartMentUserInfo
{
///
/// 员工唯一标识ID(不可修改)
///
public string userid { get; set; }
///
/// 成员名称
///
public string name { get; set; }
///
/// 表示人员在此部门中的排序,列表是按order的倒序排列输出的,即从大到小排列输出的
///
public string order { get; set; }
///
/// 表示人员在此部门中的排序,列表是按order的倒序排列输出的,即从大到小排列输出的
///
public string orderInDepts { get; set; }
///
/// 钉钉ID
///
public string dingId { get; set; }
///
/// 手机号(ISV不可见)
///
public string mobile { get; set; }
///
/// 分机号(ISV不可见)
///
public string tel { get; set; }
///
/// 办公地点(ISV不可见)
///
public string workPlace { get; set; }
///
/// 备注(ISV不可见)
///
public string remark { get; set; }
///
/// 是否是企业的管理员, true表示是, false表示不是
///
public bool isAdmin { get; set; }
///
/// 是否为企业的老板, true表示是, false表示不是
///
public bool isBoss { get; set; }
///
/// 是否隐藏号码, true表示是, false表示不是
///
public bool isHide { get; set; }
///
/// 是否是部门的主管, true表示是, false表示不是
///
public bool isLeader { get; set; }
///
/// 表示该用户是否激活了钉钉
///
public bool active { get; set; }
///
/// 成员所属部门id列表"department": [1, 2]
///
public object department { get; set; }
///
/// 职位信息
///
public string position { get; set; }
///
/// 邮箱
///
public string email { get; set; }
///
/// 头像url"./dingtalk/abc.jpg"
///
public string avatar { get; set; }
///
/// 员工工号
///
public string jobnumber { get; set; }
///
/// 扩展属性,可以设置多种属性(但手机上最多只能显示10个扩展属性,具体显示哪些属性
/// 请到OA管理后台->设置->通讯录信息设置和OA管理后台->设置->手机端显示信息设置)
/// extattr": {"爱好":"旅游","年龄":"24"}
///
public object extattr { get; set; }
}
///
/// 钉钉一般请求返回结果
///
public class Ding_Post_ReturnVal
{
///
/// 返回码
///
public string errcode { get; set; }
///
/// 对返回码的文本描述内容
///
public string errmsg { get; set; }
}
#region 钉钉消息实体类
public abstract class Ding_Msg
{
///
/// 发送的业务编号
///
public long WorkID { get; set; }
///
/// 钉钉访问许可
///
public string Access_Token { get; set; }
#region 发送普通会话消息
///
/// 必须:是- 消息发送者员工ID
///
public string sender { get; set; }
///
/// 必须:是- 群消息或者个人聊天会话Id,(通过JSAPI之pickConversation接口唤起联系人界面选择之后即可拿到会话ID,之后您可以使用获取到的cid调用此接口)
///
public string cid { get; set; }
#endregion
#region 发送企业会话消息
///
/// 必须:否- 员工ID列表(消息接收者,多个接收者用’ | '分隔)。特殊情况:指定为@all,则向该企业应用的全部成员发送
///
public string touser { get; set; }
///
/// 必须:否- 部门id列表,多个接收者用’ | '分隔。当touser为@all时忽略本参数 touser或者toparty 二者有一个必填
///
public string toparty { get; set; }
///
/// 必须:是- 企业应用id,这个值代表以哪个应用的名义发送消息
///
public string agentid { get; set; }
#endregion
}
///
/// 文本和超链接消息
///
public class Ding_Msg_Text : Ding_Msg
{
///
/// 必须:是- 消息类型,此时固定为:text
///
public string msgtype
{
get
{
return "text";
}
}
///
/// 必须:是- 消息内容
///
public string content { get; set; }
}
///
/// 超链接消息
///
public class Ding_Msg_Link : Ding_Msg
{
///
/// 必须:是- 消息类型,此时固定为:link
///
public string msgtype
{
get
{
return "link";
}
}
///
/// 必须:是- 消息点击链接地址
///
public string messageUrl { get; set; }
///
/// 必须:是- 图片媒体文件id,可以调用上传媒体文件接口获取
///
public string picUrl { get; set; }
///
/// 必须:是- 消息标题
///
public string title { get; set; }
///
/// 必须:是- 消息内容
///
public string text { get; set; }
}
///
/// OA消息内容
///
public class Ding_Msg_OA : Ding_Msg
{
///
/// 必须:是- 消息类型,此时固定为:oa
///
public string msgtype
{
get
{
return "oa";
}
}
///
/// 必须:是- 客户端点击消息时跳转到的H5地址
///
public string messageUrl { get; set; }
///
/// 必须:是- 消息头部的背景颜色。长度限制为8个英文字符,其中前2为表示透明度,后6位表示颜色值。不要添加0x
///
public string head_bgcolor { get; set; }
///
/// 必须:是- 消息的头部标题(仅适用于发送普通场景)
///
public string head_text { get; set; }
///
/// 必须:否- 消息体的标题
///
public string body_title { get; set; }
///
/// 必须:否- 消息体的表单,最多显示6个,超过会被隐藏
///
public Hashtable body_form { get; set; }
///
/// 必须:否- 消息体的内容,最多显示3行
///
public string body_content { get; set; }
///
/// 必须:否- 消息体中的图片media_id
///
public string body_image { get; set; }
///
/// 必须:否- 自定义的附件数目。此数字仅供显示,钉钉不作验证
///
public string body_file_count { get; set; }
///
/// 必须:否- 自定义的作者名字
///
public string body_author { get; set; }
}
#endregion 钉钉消息 end
}