CourseController.php 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use Auth;
  4. use Request;
  5. use Validator;
  6. use App\Models\Course;
  7. use App\Http\Requests\CourseRequest;
  8. class CourseController extends BaseController
  9. {
  10. /* 视图文件相对路径 */
  11. protected $view = 'admin.course.list';
  12. protected $view_addupd = 'admin.course.addupd';
  13. protected $menu_name = 'course';
  14. public function __construct()
  15. {
  16. parent::__construct($this->menu_name);
  17. }
  18. // 获取所属菜单选项
  19. public function getBelongMenus()
  20. {
  21. $cor_sort1 = $this->menu_home->where('ename', 'cor')
  22. ->first()
  23. ->sort1;
  24. $menus_sort1 = [$cor_sort1];
  25. return $this->getSomeSecondMenus($menus_sort1);
  26. }
  27. /* 课程管理 */
  28. // 页面展示
  29. public function index()
  30. {
  31. $courses = Course::where([])
  32. ->orderBy('created_at', 'desc')
  33. ->paginate(10);
  34. $view_para = array_add($this->view_para, 'courses', $courses);
  35. $view_para = array_add($view_para, 'menu_home', $this->menu_home);
  36. return view($this->view, $view_para);
  37. }
  38. /* 添加 */
  39. // 页面展示
  40. public function addView()
  41. {
  42. $view_para = array_add($this->view_para, 'menus', $this->getBelongMenus());
  43. return view($this->view_addupd, $view_para);
  44. }
  45. // 表单处理
  46. public function addPost(CourseRequest $request)
  47. {
  48. $data = Request::except('_token');
  49. $data['belong'] = implode(',', Request::input('belong'));
  50. Course::create($data);
  51. return redirect()->route($this->menu_name)->with('success', '添加成功');
  52. }
  53. /* 编辑 */
  54. // 页面展示
  55. public function updView($id)
  56. {
  57. $course = Course::find($id);
  58. if (!$course) {
  59. return redirect()->route($this->menu_name)->with('error', '找不到该课程');
  60. }
  61. $view_para = array_add($this->view_para, 'course', $course);
  62. $view_para = array_add($view_para, 'menus', $this->getBelongMenus());
  63. return view($this->view_addupd, $view_para);
  64. }
  65. // 表单处理
  66. public function updPost($id, CourseRequest $request)
  67. {
  68. $course = Course::find($id);
  69. if (!$course) {
  70. return redirect()->route($this->menu_name)->with('error', '找不到该课程');
  71. }
  72. $course = Request::except('_token');
  73. $course['belong'] = implode(',', Request::input('belong'));
  74. Course::where('id', $id)
  75. ->update($course);
  76. return redirect()->route($this->menu_name)->with('success', '编辑成功');
  77. }
  78. /* 删除 */
  79. public function del($id)
  80. {
  81. Course::destroy($id);
  82. return redirect()->route($this->menu_name)->with('success', '删除成功');
  83. }
  84. }