CourseController.php 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. <?php
  2. namespace app\system\controller;
  3. use app\model\api\CourseModel;
  4. use think\facade\Request;
  5. use think\validate;
  6. class CourseController
  7. {
  8. // /**
  9. // * 获取所有课程列表
  10. // */
  11. // public function getCourseList()
  12. // {
  13. // $educationModel = new CourseModel();
  14. // $keyword = input('get.course_topic', ''); // 获取模糊查询关键字
  15. // $courseList = $educationModel->getCourse($keyword);
  16. //
  17. // $data = [
  18. // 'data' => $courseList
  19. // ];
  20. // return app('json')->success($data);
  21. // }
  22. // /**
  23. // * 获取所有课程列表
  24. // */
  25. // public function getCourseList()
  26. // {
  27. // $educationModel = new CourseModel();
  28. // $keyword = input('get.course_topic', ''); // 获取模糊查询关键字
  29. // $page = input('get.page', 1); // 获取页码,默认为1
  30. // $pageSize = input('get.pageSize', 10); // 获取每页数据量,默认为10
  31. //
  32. // // 获取课程列表数据和总数
  33. // $courseList = $educationModel->getCourse($keyword, $page, $pageSize);
  34. // $total = $educationModel->getCourse($keyword);
  35. //
  36. // // 封装响应数据
  37. // $data = [
  38. // 'data' => $courseList,
  39. // 'page' => $page,
  40. // 'pageSize' => $pageSize,
  41. // 'total' => $total,
  42. // ];
  43. //
  44. // // 返回分页数据
  45. // return app('json')->success($data);
  46. // }
  47. /**
  48. * 获取课程列表
  49. *
  50. * @return mixed
  51. */
  52. public function getCourseList()
  53. {
  54. $course_topic = Request::param('course_topic');
  55. $page = Request::param('page', 1, 'intval');
  56. $pageSize = Request::param('pageSize', 10, 'intval');
  57. $courseModel = new CourseModel();
  58. $query = $courseModel->order('course_id desc');
  59. if (!empty($course_topic)) {
  60. $query->whereLike('course_topic', '%' . $course_topic . '%');
  61. }
  62. $list = $query->paginate([
  63. 'page' => $page,
  64. 'list_rows' => $pageSize,
  65. ]);
  66. $data = [
  67. 'list' => $list->items(),
  68. 'total' => $list->total(),
  69. 'page' => $list->currentPage(),
  70. 'pagesize' => $list->listRows(),
  71. ];
  72. return app('json')->success($data);
  73. }
  74. /**
  75. * 获取课程详情并编辑课程
  76. * @param Request $request
  77. * @return mixed
  78. */
  79. public function editCourse(Request $request)
  80. {
  81. $validate = validate([
  82. 'course_id' => 'require|integer',
  83. 'course' => 'require|array'
  84. ], [], [
  85. 'course_id' => '课程ID',
  86. 'course' => '课程信息'
  87. ]);
  88. $params = $request->param();
  89. if (!$validate->check($params)) {
  90. return app('json')->fail($validate->getError());
  91. }
  92. $course_id = $params['course_id'];
  93. $course = $params['course'];
  94. $courseModel = new CourseModel();
  95. $course = $courseModel->findOrFail($course_id);
  96. $result = $course->update($course);
  97. if ($result) {
  98. return app('json')->success($course->toArray());
  99. }
  100. return app('json')->fail("编辑课程失败");
  101. }
  102. /**
  103. * 添加课程
  104. */
  105. public function addCourse()
  106. {
  107. $data = Request::param();
  108. $courseModel = new CourseModel();
  109. $result = $courseModel->addCourse($data);
  110. if ($result) {
  111. return json(['code' => 200, 'msg' => '添加成功', 'data' => $result]);
  112. } else {
  113. return json(['code' => 500, 'msg' => '添加失败', 'data' => '']);
  114. }
  115. }
  116. /**
  117. * 删除课程
  118. */
  119. public function deleteCourse()
  120. {
  121. $course_id = Request::param('course_id');
  122. $courseModel = new CourseModel();
  123. $result = $courseModel->deleteCourse($course_id);
  124. if ($result) {
  125. return json(['code' => 200, 'msg' => '删除成功', 'data' => $result]);
  126. } else {
  127. return json(['code' => 500, 'msg' => '删除失败', 'data' => '']);
  128. }
  129. }
  130. /**
  131. * 查找课程
  132. */
  133. public function searchCourse()
  134. {
  135. $courseId = input('course_id');
  136. $courseModel = new CourseModel();
  137. $courseDetail = $courseModel->getCourseDetail($courseId);
  138. if ($courseDetail) {
  139. return json(['code' => 200, 'msg' => '查找成功', 'data' => $courseDetail]);
  140. } else {
  141. return json(['code' => 500, 'msg' => '查找失败', 'data' => '']);
  142. }
  143. }
  144. /**
  145. * 修改课程状态
  146. */
  147. public function updateCourseStatus()
  148. {
  149. $course_id = Request::param('course_id');
  150. $course_status = Request::param('course_status');
  151. $courseModel = new CourseModel();
  152. $result = $courseModel->updateCourseStatus($course_id, $course_status);
  153. if ($result) {
  154. return json(['code' => 200, 'msg' => '修改成功', 'data' => $result]);
  155. } else {
  156. return json(['code' => 500, 'msg' => '修改失败', 'data' => '']);
  157. }
  158. }
  159. /**
  160. * 修改审核状态
  161. * @return mixed
  162. */
  163. public function updateCourseAudit()
  164. {
  165. $course_id = Request::param('course_id');
  166. $course = CourseModel::where('course_id', $course_id)->find();
  167. if (!$course) {
  168. return app('json')->fail('课程不存在');
  169. }
  170. $course->course_audit = !$course->course_audit;
  171. if ($course->save()) {
  172. return app('json')->success();
  173. } else {
  174. return app('json')->fail();
  175. }
  176. }
  177. /**
  178. * 课程是否轮播
  179. *
  180. */
  181. public function Carousel()
  182. {
  183. }
  184. /**
  185. * 修改课程信息
  186. */
  187. public function updateCourseInfo()
  188. {
  189. $course_id = Request::param('course_id');
  190. $data = Request::param();
  191. $courseModel = new CourseModel();
  192. $result = $courseModel->updateCourseInfo($course_id, $data);
  193. if ($result) {
  194. return json(['code' => 200, 'msg' => '修改成功', 'data' => $result]);
  195. } else {
  196. return json(['code' => 500, 'msg' => '修改失败', 'data' => '']);
  197. }
  198. }
  199. }