1
zrg
2024-10-15 a1e3e548ea03ceb32d07bf9f73f4719dd14f7f2e
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
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
{
    /// <summary>
    /// TOP API: dingtalk.oapi.edu.course.create
    /// </summary>
    public class OapiEduCourseCreateRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiEduCourseCreateResponse>
    {
        /// <summary>
        /// 业务唯一键,用于保证课程的唯一性,防止重复创建
        /// </summary>
        public string BizKey { get; set; }
 
        /// <summary>
        /// 课程的结束时间,Unix毫秒时间戳
        /// </summary>
        public Nullable<long> EndTime { get; set; }
 
        /// <summary>
        /// 课程介绍
        /// </summary>
        public string Introduce { get; set; }
 
        /// <summary>
        /// 课程名称
        /// </summary>
        public string Name { get; set; }
 
        /// <summary>
        /// 当前用户ID
        /// </summary>
        public string OpUserid { get; set; }
 
        /// <summary>
        /// 课程选项信息
        /// </summary>
        public string Option { get; set; }
 
        public CreateCourseOptionDomain Option_ { set { this.Option = TopUtils.ObjectToJson(value); } } 
 
        /// <summary>
        /// 课程的开始时间,Unix毫秒时间戳
        /// </summary>
        public Nullable<long> StartTime { get; set; }
 
        /// <summary>
        /// 老师的组织CorpId
        /// </summary>
        public string TeacherCorpid { get; set; }
 
        /// <summary>
        /// 老师的用户ID
        /// </summary>
        public string TeacherUserid { get; set; }
 
        #region IDingTalkRequest Members
 
        public override string GetApiName()
        {
            return "dingtalk.oapi.edu.course.create";
        }
 
        public override string GetApiCallType()
        {
            return DingTalkConstants.CALL_TYPE_OAPI;
        }
 
        public override IDictionary<string, string> GetParameters()
        {
            TopDictionary parameters = new TopDictionary();
            parameters.Add("biz_key", this.BizKey);
            parameters.Add("end_time", this.EndTime);
            parameters.Add("introduce", this.Introduce);
            parameters.Add("name", this.Name);
            parameters.Add("op_userid", this.OpUserid);
            parameters.Add("option", this.Option);
            parameters.Add("start_time", this.StartTime);
            parameters.Add("teacher_corpid", this.TeacherCorpid);
            parameters.Add("teacher_userid", this.TeacherUserid);
            if (this.otherParams != null)
            {
                parameters.AddAll(this.otherParams);
            }
            return parameters;
        }
 
        public override void Validate()
        {
            RequestValidator.ValidateRequired("biz_key", this.BizKey);
            RequestValidator.ValidateMaxLength("biz_key", this.BizKey, 64);
            RequestValidator.ValidateRequired("introduce", this.Introduce);
            RequestValidator.ValidateMaxLength("introduce", this.Introduce, 120);
            RequestValidator.ValidateRequired("name", this.Name);
            RequestValidator.ValidateMaxLength("name", this.Name, 64);
            RequestValidator.ValidateRequired("op_userid", this.OpUserid);
            RequestValidator.ValidateRequired("teacher_corpid", this.TeacherCorpid);
            RequestValidator.ValidateRequired("teacher_userid", this.TeacherUserid);
        }
 
    /// <summary>
/// CreateCourseOptionDomain Data Structure.
/// </summary>
[Serializable]
 
public class CreateCourseOptionDomain : TopObject
{
            /// <summary>
            /// 课堂模式:1/6/12(支持多少人上台)
            /// </summary>
            [XmlElement("onlineMode")]
            public string OnlineMode { get; set; }
    
            /// <summary>
            /// 使用的平台:1(在线课堂)、2(在线课堂Pro)
            /// </summary>
            [XmlElement("platform")]
            public string Platform { get; set; }
    
            /// <summary>
            /// 是否录制老师头像
            /// </summary>
            [XmlElement("recordAvatar")]
            public Nullable<bool> RecordAvatar { get; set; }
}
 
        #endregion
    }
}