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.course.detaildata.list
///
public class OapiEduCourseDetaildataListRequest : BaseDingTalkRequest
{
///
/// 数据类别编码
///
public string CategoryCode { get; set; }
///
/// 课程编码
///
public string CourseCode { get; set; }
///
/// 分页游标,从0开始
///
public Nullable Cursor { get; set; }
///
/// 数据因子编码数组,不填的话自动填充类别下全部的明细因子
///
public string FactorCodes { get; set; }
///
/// 当前操作人的用户ID
///
public string OpUserid { get; set; }
///
/// 分页大小
///
public Nullable Size { get; set; }
///
/// 需要获取的用户CropId(必须和用户ID同时传值或同时为空)
///
public string UserCropid { get; set; }
///
/// 需要获取的用户ID
///
public string UserIds { get; set; }
#region IDingTalkRequest Members
public override string GetApiName()
{
return "dingtalk.oapi.edu.course.detaildata.list";
}
public override string GetApiCallType()
{
return DingTalkConstants.CALL_TYPE_OAPI;
}
public override IDictionary GetParameters()
{
TopDictionary parameters = new TopDictionary();
parameters.Add("category_code", this.CategoryCode);
parameters.Add("course_code", this.CourseCode);
parameters.Add("cursor", this.Cursor);
parameters.Add("factor_codes", this.FactorCodes);
parameters.Add("op_userid", this.OpUserid);
parameters.Add("size", this.Size);
parameters.Add("user_cropid", this.UserCropid);
parameters.Add("user_ids", this.UserIds);
if (this.otherParams != null)
{
parameters.AddAll(this.otherParams);
}
return parameters;
}
public override void Validate()
{
RequestValidator.ValidateRequired("category_code", this.CategoryCode);
RequestValidator.ValidateRequired("course_code", this.CourseCode);
RequestValidator.ValidateRequired("cursor", this.Cursor);
RequestValidator.ValidateMinValue("cursor", this.Cursor, 0);
RequestValidator.ValidateMaxListSize("factor_codes", this.FactorCodes, 100);
RequestValidator.ValidateRequired("op_userid", this.OpUserid);
RequestValidator.ValidateRequired("size", this.Size);
RequestValidator.ValidateMaxValue("size", this.Size, 100);
RequestValidator.ValidateMinValue("size", this.Size, 1);
RequestValidator.ValidateMaxListSize("user_ids", this.UserIds, 100);
}
#endregion
}
}