EducationController.php 3.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147
  1. <?php
  2. namespace app\system\controller;
  3. use Qiniu\Auth;
  4. use Qiniu\Storage\UploadManager;
  5. use app\model\api\EducationModel;
  6. use think\facade\Db;
  7. use think\Request;
  8. class EducationController
  9. {
  10. /**
  11. * 获取所有分类
  12. * @return \think\response\Json
  13. */
  14. public function getCate()
  15. {
  16. $items = Db::table('table_education_cate')
  17. ->where(['status' => 'Y'])
  18. ->order('sort', 'asc')
  19. ->column('id,pid,name,sort', 'id');
  20. $tree = []; //格式化好的树
  21. foreach ($items as $key => $item) {
  22. $items[$key]['oriName'] = $item['name'];
  23. if (isset($items[$item['pid']])) {
  24. $items[$item['pid']]['children'][$item['id']] = &$items[$item['id']];
  25. } else {
  26. $tree[$item['id']] = &$items[$item['id']];
  27. }
  28. }
  29. return app('json')->success($tree);
  30. }
  31. /**
  32. * 获取所有文章列表
  33. * @return \think\response\Json
  34. */
  35. public function gteArticleList()
  36. {
  37. $excludeCourseId = $this->request->param('exclude_course_id');
  38. $educationModel = new EducationModel();
  39. // 获取所有文章列表
  40. $courseList = $educationModel->getCourseList($excludeCourseId);
  41. return json([
  42. 'courseList' => $courseList,
  43. ]);
  44. }
  45. /**
  46. * 获取顶级分类
  47. *
  48. * @return array
  49. */
  50. public function getTopCate()
  51. {
  52. $educationModel = new EducationModel;
  53. return $educationModel->getTopCate();
  54. }
  55. /**
  56. * 获取指定分类的子分类 ID 列表
  57. *
  58. * @param array $cates 分类数组
  59. * @return array
  60. */
  61. public function getSubcatesByTopCate($cates)
  62. {
  63. $educationModel = new EducationModel;
  64. return $educationModel->getSubcatesByTopCate($cates);
  65. }
  66. /**
  67. * 修改分类
  68. *
  69. * @param Request $request 请求对象
  70. * @return \think\response\Json
  71. */
  72. public function editCate(Request $request)
  73. {
  74. $id = $request->param('id');
  75. $data = $request->param();
  76. $educationModel = new EducationModel;
  77. if ($educationModel->update($data, ['id' => $id])) {
  78. return json(['code' => 0, 'msg' => '修改成功']);
  79. } else {
  80. return json(['code' => -1, 'msg' => '修改失败']);
  81. }
  82. }
  83. /**
  84. * 增加一个分类
  85. *
  86. * @param Request $request 请求对象
  87. * @return \think\response\Json
  88. */
  89. public function cateadd(Request $request)
  90. {
  91. $pid = $request->param('id/d', 0);
  92. if ($request->isPost() && $pid) {
  93. $name = $request->param('name/s', '');
  94. $sort = $request->param('sort/d', 0);
  95. if (!$name) {
  96. return json(['code' => -1, 'msg' => '分类名称不能为空']);
  97. }
  98. $data = [
  99. 'pid' => $pid,
  100. 'name' => $name,
  101. 'sort' => $sort,
  102. ];
  103. $educationModel = (new EducationModel())->cate;
  104. if ($educationModel->addCate($data)) {
  105. return json(['code' => 0, 'msg' => '保存成功']);
  106. } else {
  107. return json(['code' => -1, 'msg' => '保存失败']);
  108. }
  109. }
  110. return json(['code' => 0, 'data' => []]);
  111. }
  112. /**
  113. * 删除一个分类
  114. */
  115. public function delcate()
  116. {
  117. }
  118. }