OapiEduCourseListRequest.php 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. <?php
  2. /**
  3. * dingtalk API: dingtalk.oapi.edu.course.list request
  4. *
  5. * @author auto create
  6. * @since 1.0, 2021.06.10
  7. */
  8. class OapiEduCourseListRequest
  9. {
  10. /**
  11. * 按课程编码列表查询
  12. **/
  13. private $courseCodes;
  14. /**
  15. * 表示分页游标,从0开始
  16. **/
  17. private $cursor;
  18. /**
  19. * 时间查询结束区间
  20. **/
  21. private $endTime;
  22. /**
  23. * 按课程名称查询
  24. **/
  25. private $name;
  26. /**
  27. * 当前操作人的用户ID
  28. **/
  29. private $opUserid;
  30. /**
  31. * 查询选项
  32. **/
  33. private $option;
  34. /**
  35. * 参与方查询条件
  36. **/
  37. private $participantCondition;
  38. /**
  39. * 查询的场景:当前有:manage(管理视角),lecture(授课视角)
  40. **/
  41. private $scene;
  42. /**
  43. * 表示分页大小
  44. **/
  45. private $size;
  46. /**
  47. * 时间查询开始区间
  48. **/
  49. private $startTime;
  50. /**
  51. * 课程状态值
  52. **/
  53. private $statuses;
  54. /**
  55. * 按应用唯一标识列表查询
  56. **/
  57. private $suiteKeys;
  58. /**
  59. * 授课老师查询条件
  60. **/
  61. private $teacherConditions;
  62. private $apiParas = array();
  63. public function setCourseCodes($courseCodes)
  64. {
  65. $this->courseCodes = $courseCodes;
  66. $this->apiParas["course_codes"] = $courseCodes;
  67. }
  68. public function getCourseCodes()
  69. {
  70. return $this->courseCodes;
  71. }
  72. public function setCursor($cursor)
  73. {
  74. $this->cursor = $cursor;
  75. $this->apiParas["cursor"] = $cursor;
  76. }
  77. public function getCursor()
  78. {
  79. return $this->cursor;
  80. }
  81. public function setEndTime($endTime)
  82. {
  83. $this->endTime = $endTime;
  84. $this->apiParas["end_time"] = $endTime;
  85. }
  86. public function getEndTime()
  87. {
  88. return $this->endTime;
  89. }
  90. public function setName($name)
  91. {
  92. $this->name = $name;
  93. $this->apiParas["name"] = $name;
  94. }
  95. public function getName()
  96. {
  97. return $this->name;
  98. }
  99. public function setOpUserid($opUserid)
  100. {
  101. $this->opUserid = $opUserid;
  102. $this->apiParas["op_userid"] = $opUserid;
  103. }
  104. public function getOpUserid()
  105. {
  106. return $this->opUserid;
  107. }
  108. public function setOption($option)
  109. {
  110. $this->option = $option;
  111. $this->apiParas["option"] = $option;
  112. }
  113. public function getOption()
  114. {
  115. return $this->option;
  116. }
  117. public function setParticipantCondition($participantCondition)
  118. {
  119. $this->participantCondition = $participantCondition;
  120. $this->apiParas["participant_condition"] = $participantCondition;
  121. }
  122. public function getParticipantCondition()
  123. {
  124. return $this->participantCondition;
  125. }
  126. public function setScene($scene)
  127. {
  128. $this->scene = $scene;
  129. $this->apiParas["scene"] = $scene;
  130. }
  131. public function getScene()
  132. {
  133. return $this->scene;
  134. }
  135. public function setSize($size)
  136. {
  137. $this->size = $size;
  138. $this->apiParas["size"] = $size;
  139. }
  140. public function getSize()
  141. {
  142. return $this->size;
  143. }
  144. public function setStartTime($startTime)
  145. {
  146. $this->startTime = $startTime;
  147. $this->apiParas["start_time"] = $startTime;
  148. }
  149. public function getStartTime()
  150. {
  151. return $this->startTime;
  152. }
  153. public function setStatuses($statuses)
  154. {
  155. $this->statuses = $statuses;
  156. $this->apiParas["statuses"] = $statuses;
  157. }
  158. public function getStatuses()
  159. {
  160. return $this->statuses;
  161. }
  162. public function setSuiteKeys($suiteKeys)
  163. {
  164. $this->suiteKeys = $suiteKeys;
  165. $this->apiParas["suite_keys"] = $suiteKeys;
  166. }
  167. public function getSuiteKeys()
  168. {
  169. return $this->suiteKeys;
  170. }
  171. public function setTeacherConditions($teacherConditions)
  172. {
  173. $this->teacherConditions = $teacherConditions;
  174. $this->apiParas["teacher_conditions"] = $teacherConditions;
  175. }
  176. public function getTeacherConditions()
  177. {
  178. return $this->teacherConditions;
  179. }
  180. public function getApiMethodName()
  181. {
  182. return "dingtalk.oapi.edu.course.list";
  183. }
  184. public function getApiParas()
  185. {
  186. return $this->apiParas;
  187. }
  188. public function check()
  189. {
  190. RequestCheckUtil::checkMaxListSize($this->courseCodes,100,"courseCodes");
  191. RequestCheckUtil::checkNotNull($this->cursor,"cursor");
  192. RequestCheckUtil::checkMinValue($this->cursor,0,"cursor");
  193. RequestCheckUtil::checkNotNull($this->opUserid,"opUserid");
  194. RequestCheckUtil::checkNotNull($this->size,"size");
  195. RequestCheckUtil::checkMaxValue($this->size,100,"size");
  196. RequestCheckUtil::checkMinValue($this->size,1,"size");
  197. RequestCheckUtil::checkMaxListSize($this->statuses,5,"statuses");
  198. RequestCheckUtil::checkMaxListSize($this->suiteKeys,5,"suiteKeys");
  199. }
  200. public function putOtherTextParam($key, $value) {
  201. $this->apiParas[$key] = $value;
  202. $this->$key = $value;
  203. }
  204. }