using System;
using System.Xml.Serialization;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.ding.send
///
public class OapiDingSendRequest : BaseDingTalkRequest
{
///
/// 发DING的请求体
///
public string OpenDingSendVo { get; set; }
public OpenDingSendVoDomain OpenDingSendVo_ { set { this.OpenDingSendVo = TopUtils.ObjectToJson(value); } }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.ding.send";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("open_ding_send_vo", this.OpenDingSendVo);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("open_ding_send_vo", this.OpenDingSendVo);
}
///
/// AttachmentVoDomain Data Structure.
///
[Serializable]
public class AttachmentVoDomain : TopObject
{
///
/// 文件后缀, 用于展示文件对应图标
///
[XmlElement("detail_type")]
public string DetailType { get; set; }
///
/// 上传DING盘后的文件ID
///
[XmlElement("file_id")]
public string FileId { get; set; }
///
/// 文件名
///
[XmlElement("file_name")]
public string FileName { get; set; }
///
/// 文件大小(单位:Byte, 最大2G)
///
[XmlElement("file_size")]
public Nullable FileSize { get; set; }
///
/// 上传DING盘后的SpaceId
///
[XmlElement("file_space_id")]
public string FileSpaceId { get; set; }
///
/// 链接缩略图
///
[XmlElement("link_pic_url")]
public string LinkPicUrl { get; set; }
///
/// 链接摘要
///
[XmlElement("link_text")]
public string LinkText { get; set; }
///
/// 链接标题
///
[XmlElement("link_title")]
public string LinkTitle { get; set; }
///
/// 链接URL
///
[XmlElement("link_url")]
public string LinkUrl { get; set; }
///
/// 附件类型:img-图片,link-链接,file-文件
///
[XmlElement("type")]
public string Type { get; set; }
}
///
/// OpenDingSendVoDomain Data Structure.
///
[Serializable]
public class OpenDingSendVoDomain : TopObject
{
///
/// 附件
///
[XmlElement("attachment")]
public AttachmentVoDomain Attachment { get; set; }
///
/// 接收者工号列表
///
[XmlArray("receiver_uids")]
[XmlArrayItem("string")]
public List ReceiverUids { get; set; }
///
/// 提醒类型:1-应用内;2-短信
///
[XmlElement("remind_type")]
public Nullable RemindType { get; set; }
///
/// 通知内容
///
[XmlElement("text_content")]
public string TextContent { get; set; }
}
#endregion
}
}