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.edu.period.create /// public class OapiEduPeriodCreateRequest : BaseDingTalkRequest { /// /// 学段信息 /// public string OpenPeriod { get; set; } public OpenPeriodDomain OpenPeriod_ { set { this.OpenPeriod = TopUtils.ObjectToJson(value); } } /// /// 钉钉管理员 /// public string Operator { get; set; } /// /// 校区id /// public Nullable SuperId { get; set; } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.edu.period.create"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("open_period", this.OpenPeriod); parameters.Add("operator", this.Operator); parameters.Add("super_id", this.SuperId); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("open_period", this.OpenPeriod); RequestValidator.ValidateRequired("operator", this.Operator); RequestValidator.ValidateRequired("super_id", this.SuperId); } /// /// GradesDomain Data Structure. /// [Serializable] public class GradesDomain : TopObject { /// /// 创建年级时,需要在此年级下创建多少个班级。允许填0. /// [XmlElement("classes")] public Nullable Classes { get; set; } /// /// 年级level /// [XmlElement("grade")] public string Grade { get; set; } /// /// 年级名 /// [XmlElement("name")] public string Name { get; set; } /// /// 入学年份 /// [XmlElement("start_year")] public string StartYear { get; set; } } /// /// OpenPeriodDomain Data Structure. /// [Serializable] public class OpenPeriodDomain : TopObject { /// /// 年级 /// [XmlArray("grades")] [XmlArrayItem("grades")] public List Grades { get; set; } /// /// number: 初中按照1,2,3年级命名。默认。 text: 初中按照6,7,8,9年级命名 /// [XmlElement("name_mode")] public string NameMode { get; set; } /// /// 幼儿园:kindergarten 小学:primary_school 初中: middle_school 高中: high_school /// [XmlElement("period_code")] public string PeriodCode { get; set; } /// /// 学段名. 其枚举值: 幼儿园/小学/初中/高中 /// [XmlElement("step")] public string Step { get; set; } } #endregion } }