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.homework.create /// public class OapiEduHomeworkCreateRequest : BaseDingTalkRequest { /// /// 扩展属性 /// public string Attributes { get; set; } /// /// 业务编码 /// public string BizCode { get; set; } /// /// 作业课程名称 /// public string CourseName { get; set; } /// /// 作业内容 /// public string HwContent { get; set; } /// /// 截止时间 /// public Nullable HwDeadline { get; set; } /// /// 是否开启截止时间 /// public string HwDeadlineOpen { get; set; } /// /// 作业视频 /// public string HwMedia { get; set; } /// /// 作业图片 /// public string HwPhoto { get; set; } /// /// 作业标题 /// public string HwTitle { get; set; } /// /// 作业类型 /// public string HwType { get; set; } /// /// 作业录音 /// public string HwVideo { get; set; } /// /// 幂等ID字段 /// public string Identifier { get; set; } /// /// 是否开始定时调度 /// public string ScheduledRelease { get; set; } /// /// 定时调度时间 /// public string ScheduledTime { get; set; } /// /// 选择的布置班级 /// public string SelectClass { get; set; } public List SelectClass_ { set { this.SelectClass = TopUtils.ObjectToJson(value); } } /// /// 选择班级对应学生 /// public string SelectStu { get; set; } public List SelectStu_ { set { this.SelectStu = TopUtils.ObjectToJson(value); } } /// /// 状态 /// public string Status { get; set; } /// /// 发送对象 /// public string TargetRole { get; set; } /// /// 老师名称 /// public string TeacherName { get; set; } /// /// 老师userid /// public string TeacherUserid { get; set; } #region IDingTalkRequest Members public override string GetApiName() { return "dingtalk.oapi.edu.homework.create"; } public override string GetApiCallType() { return DingTalkConstants.CALL_TYPE_OAPI; } public override IDictionary GetParameters() { TopDictionary parameters = new TopDictionary(); parameters.Add("attributes", this.Attributes); parameters.Add("biz_code", this.BizCode); parameters.Add("course_name", this.CourseName); parameters.Add("hw_content", this.HwContent); parameters.Add("hw_deadline", this.HwDeadline); parameters.Add("hw_deadline_open", this.HwDeadlineOpen); parameters.Add("hw_media", this.HwMedia); parameters.Add("hw_photo", this.HwPhoto); parameters.Add("hw_title", this.HwTitle); parameters.Add("hw_type", this.HwType); parameters.Add("hw_video", this.HwVideo); parameters.Add("identifier", this.Identifier); parameters.Add("scheduled_release", this.ScheduledRelease); parameters.Add("scheduled_time", this.ScheduledTime); parameters.Add("select_class", this.SelectClass); parameters.Add("select_stu", this.SelectStu); parameters.Add("status", this.Status); parameters.Add("target_role", this.TargetRole); parameters.Add("teacher_name", this.TeacherName); parameters.Add("teacher_userid", this.TeacherUserid); if (this.otherParams != null) { parameters.AddAll(this.otherParams); } return parameters; } public override void Validate() { RequestValidator.ValidateRequired("biz_code", this.BizCode); RequestValidator.ValidateRequired("course_name", this.CourseName); RequestValidator.ValidateRequired("hw_content", this.HwContent); RequestValidator.ValidateRequired("hw_title", this.HwTitle); RequestValidator.ValidateRequired("identifier", this.Identifier); RequestValidator.ValidateObjectMaxListSize("select_class", this.SelectClass, 50); RequestValidator.ValidateObjectMaxListSize("select_stu", this.SelectStu, 50); RequestValidator.ValidateRequired("status", this.Status); RequestValidator.ValidateRequired("teacher_name", this.TeacherName); RequestValidator.ValidateRequired("teacher_userid", this.TeacherUserid); } /// /// ClassInfoItemDomain Data Structure. /// [Serializable] public class ClassInfoItemDomain : TopObject { /// /// 班级ID /// [XmlElement("class_id")] public Nullable ClassId { get; set; } /// /// 班级名称 /// [XmlElement("class_name")] public string ClassName { get; set; } } /// /// StuInfoItemDomain Data Structure. /// [Serializable] public class StuInfoItemDomain : TopObject { /// /// 学生userid /// [XmlElement("stu_id")] public string StuId { get; set; } /// /// 学生姓名 /// [XmlElement("stu_name")] public string StuName { get; set; } } /// /// SelectStuItemDomain Data Structure. /// [Serializable] public class SelectStuItemDomain : TopObject { /// /// 班级ID /// [XmlElement("class_id")] public Nullable ClassId { get; set; } /// /// 班级名称 /// [XmlElement("class_name")] public string ClassName { get; set; } /// /// 选择学生列表 /// [XmlArray("class_stu")] [XmlArrayItem("stu_info_item")] public List ClassStu { get; set; } } #endregion } }