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
}
}