1
zrg
2024-11-19 c8ea1579594ac9f7adf519d8ec9ee868d8fec54f
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
135
136
137
138
139
140
141
142
143
144
145
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.school.init
    /// </summary>
    public class OapiEduSchoolInitRequest : BaseDingTalkRequest<DingTalk.Api.Response.OapiEduSchoolInitResponse>
    {
        /// <summary>
        /// 校区
        /// </summary>
        public string Campus { get; set; }
 
        public OpenCampusDomain Campus_ { set { this.Campus = TopUtils.ObjectToJson(value); } } 
 
        /// <summary>
        /// 钉钉企业通讯录管理员
        /// </summary>
        public string Operator { get; set; }
 
        #region IDingTalkRequest Members
 
        public override string GetApiName()
        {
            return "dingtalk.oapi.edu.school.init";
        }
 
        public override string GetApiCallType()
        {
            return DingTalkConstants.CALL_TYPE_OAPI;
        }
 
        public override IDictionary<string, string> GetParameters()
        {
            TopDictionary parameters = new TopDictionary();
            parameters.Add("campus", this.Campus);
            parameters.Add("operator", this.Operator);
            if (this.otherParams != null)
            {
                parameters.AddAll(this.otherParams);
            }
            return parameters;
        }
 
        public override void Validate()
        {
            RequestValidator.ValidateRequired("campus", this.Campus);
            RequestValidator.ValidateRequired("operator", this.Operator);
        }
 
    /// <summary>
/// OpenGradeDomain Data Structure.
/// </summary>
[Serializable]
 
public class OpenGradeDomain : TopObject
{
            /// <summary>
            /// [0,无限)其下的班级数。尽量不要超过100个,否则页面性能有问题
            /// </summary>
            [XmlElement("classes")]
            public Nullable<long> Classes { get; set; }
    
            /// <summary>
            /// 年级level
            /// </summary>
            [XmlElement("grade")]
            public string Grade { get; set; }
    
            /// <summary>
            /// 年级名,与grade start_year需要对应
            /// </summary>
            [XmlElement("name")]
            public string Name { get; set; }
    
            /// <summary>
            /// 入学年份。请注意startyear name grade三者之间的关联关系
            /// </summary>
            [XmlElement("start_year")]
            public string StartYear { get; set; }
}
 
    /// <summary>
/// OpenPeriodDomain Data Structure.
/// </summary>
[Serializable]
 
public class OpenPeriodDomain : TopObject
{
            /// <summary>
            /// 年级列表
            /// </summary>
            [XmlArray("grades")]
            [XmlArrayItem("open_grade")]
            public List<OpenGradeDomain> Grades { get; set; }
    
            /// <summary>
            /// number: 初中按照1,2,3年级命名。默认。  text: 初中按照6,7,8,9年级命名
            /// </summary>
            [XmlElement("name_mode")]
            public string NameMode { get; set; }
    
            /// <summary>
            /// 学段code。幼儿园:kindergarten  小学:primary_school  初中:  middle_school  高中:  high_school
            /// </summary>
            [XmlElement("period_code")]
            public string PeriodCode { get; set; }
    
            /// <summary>
            /// 学段名;幼儿园:kindergarten  小学:primary_school  初中:  middle_school  高中:  high_school
            /// </summary>
            [XmlElement("step")]
            public string Step { get; set; }
}
 
    /// <summary>
/// OpenCampusDomain Data Structure.
/// </summary>
[Serializable]
 
public class OpenCampusDomain : TopObject
{
            /// <summary>
            /// 校区名
            /// </summary>
            [XmlElement("name")]
            public string Name { get; set; }
    
            /// <summary>
            /// 学段列表
            /// </summary>
            [XmlArray("periods")]
            [XmlArrayItem("open_period")]
            public List<OpenPeriodDomain> Periods { get; set; }
}
 
        #endregion
    }
}