CourseController.php 5.9 KB

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