using System;
using System.Collections.Generic;
using Top.Api.Util;
using Top.Api;
using Top.Api.DingTalk;
namespace DingTalk.Api.Request
{
///
/// TOP API: dingtalk.oapi.edu.recommend.create
///
public class OapiEduRecommendCreateRequest : BaseDingTalkRequest
{
///
/// 班级ID
///
public Nullable ClassId { get; set; }
///
/// 内容标签,推荐扩散给其他用户使用
///
public string LabelList { get; set; }
///
/// ISV侧内容唯一ID
///
public string OutContentId { get; set; }
///
/// 学段
///
public string PeriodCode { get; set; }
///
/// 回跳地址
///
public string ReturnUrl { get; set; }
///
/// 学科
///
public string SubjectCode { get; set; }
///
/// 摘要
///
public string Summary { get; set; }
///
/// 教材版本
///
public string TextbookCode { get; set; }
///
/// 缩略图url地址
///
public string Thumbnail { get; set; }
///
/// 内容标题
///
public string Title { get; set; }
///
/// 内容总时长,单位秒
///
public Nullable TotalTime { get; set; }
///
/// 类型:1词汇 2课文 3题目 4考试 5知识点 6课程 7其他
///
public string Type { get; set; }
///
/// 当前用户userid
///
public string Userid { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.edu.recommend.create";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("class_id", this.ClassId);
parameters.Add("labelList", this.LabelList);
parameters.Add("out_content_id", this.OutContentId);
parameters.Add("period_code", this.PeriodCode);
parameters.Add("return_url", this.ReturnUrl);
parameters.Add("subject_code", this.SubjectCode);
parameters.Add("summary", this.Summary);
parameters.Add("textbook_code", this.TextbookCode);
parameters.Add("thumbnail", this.Thumbnail);
parameters.Add("title", this.Title);
parameters.Add("totalTime", this.TotalTime);
parameters.Add("type", this.Type);
parameters.Add("userid", this.Userid);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateMaxListSize("labelList", this.LabelList, 100);
RequestValidator.ValidateRequired("out_content_id", this.OutContentId);
RequestValidator.ValidateRequired("period_code", this.PeriodCode);
RequestValidator.ValidateRequired("return_url", this.ReturnUrl);
RequestValidator.ValidateRequired("thumbnail", this.Thumbnail);
RequestValidator.ValidateRequired("title", this.Title);
RequestValidator.ValidateRequired("type", this.Type);
RequestValidator.ValidateRequired("userid", this.Userid);
}
#endregion
}
}