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.serviceaccount.menu.update /// public class OapiServiceaccountMenuUpdateRequest : BaseDingTalkRequest { /// /// 菜单 /// public string Menu { get; set; } public MenuConfigDTODomain Menu_ { set { this.Menu = TopUtils.ObjectToJson(value); } } /// /// 服务号的unionid /// public string Unionid { get; set; } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.serviceaccount.menu.update"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("menu", this.Menu); parameters.Add("unionid", this.Unionid); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("unionid", this.Unionid); } /// /// MenuSubButtonDTODomain Data Structure. /// [Serializable] public class MenuSubButtonDTODomain : TopObject { /// /// 菜单绑定的key值 /// [XmlElement("key")] public string Key { get; set; } /// /// 素材id /// [XmlElement("media_id")] public string MediaId { get; set; } /// /// 名称 /// [XmlElement("name")] public string Name { get; set; } /// /// 类型 /// [XmlElement("type")] public string Type { get; set; } /// /// 菜单绑定的URL /// [XmlElement("url")] public string Url { get; set; } } /// /// MenuButtonDTODomain Data Structure. /// [Serializable] public class MenuButtonDTODomain : TopObject { /// /// 菜单绑定的key值 /// [XmlElement("key")] public string Key { get; set; } /// /// 素材id /// [XmlElement("media_id")] public string MediaId { get; set; } /// /// 名称 /// [XmlElement("name")] public string Name { get; set; } /// /// 子菜单按钮列表 /// [XmlArray("sub_button")] [XmlArrayItem("menu_sub_button_d_t_o")] public List SubButton { get; set; } /// /// 类型 /// [XmlElement("type")] public string Type { get; set; } /// /// 菜单绑定的URL /// [XmlElement("url")] public string Url { get; set; } } /// /// MenuConfigDTODomain Data Structure. /// [Serializable] public class MenuConfigDTODomain : TopObject { /// /// 菜单按钮列表 /// [XmlArray("button")] [XmlArrayItem("menu_button_d_t_o")] public List Button { get; set; } /// /// 是否允许用户输入 /// [XmlElement("enable_input")] public Nullable EnableInput { get; set; } /// /// 状态,0-正常,1-停用 /// [XmlElement("status")] public Nullable Status { get; set; } } #endregion } }