ActiveThemeController.php 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. <?php
  2. namespace App\Http\Controllers\Admin;
  3. use Request;
  4. use App\Models\Active;
  5. use App\Models\ActivesTheme;
  6. use App\Http\Requests\ActiveThemeRequest;
  7. class ActiveThemeController extends BaseController
  8. {
  9. /* 视图文件相对路径 */
  10. protected $view = 'admin.active.list_theme';
  11. protected $view_addupd = 'admin.active.addupd_theme';
  12. protected $menu_name = 'active';
  13. protected $route_href = 'activeTheme';
  14. public function __construct()
  15. {
  16. parent::__construct($this->menu_name);
  17. }
  18. /* 活动主题管理 */
  19. // 页面展示
  20. public function index()
  21. {
  22. $activesThemes = ActivesTheme::where([])
  23. ->orderBy('created_at', 'desc')
  24. ->paginate(10);
  25. $view_para = array_add($this->view_para, 'activesThemes', $activesThemes);
  26. return view($this->view, $view_para);
  27. }
  28. /* 添加 */
  29. // 页面展示
  30. public function addView()
  31. {
  32. return view($this->view_addupd, $this->view_para);
  33. }
  34. // 表单处理
  35. public function addPost(ActiveThemeRequest $request)
  36. {
  37. ActivesTheme::create([
  38. 'name' => Request::input('name')
  39. ]);
  40. return redirect()->route($this->route_href)->with('success', '添加成功');
  41. }
  42. /* 修改 */
  43. // 页面展示
  44. public function updView($tid)
  45. {
  46. $activesTheme = ActivesTheme::find($tid);
  47. if (!$activesTheme) {
  48. return redirect()->route($this->route_href)->with('error', '找不到该活动主题');
  49. }
  50. $view_para = array_add($this->view_para, 'activesTheme', $activesTheme);
  51. return view($this->view_addupd, $view_para);
  52. }
  53. // 表单处理
  54. public function updPost($tid, ActiveThemeRequest $request)
  55. {
  56. $activeTheme = ActivesTheme::find($tid);
  57. if (!$activeTheme) {
  58. return redirect()->route($this->route_href)->with('error', '找不到该活动主题');
  59. }
  60. ActivesTheme::where('id', $tid)
  61. ->update([
  62. 'name' => Request::input('name')
  63. ]);
  64. return redirect()->route($this->route_href)->with('success', '编辑成功');
  65. }
  66. /* 删除 */
  67. public function del($tid)
  68. {
  69. $if_del = Active::where('tid', $tid)
  70. ->count();
  71. if ($if_del) {
  72. return redirect()->route($this->route_href)->with('error', '请先删除该主题下的活动');
  73. }
  74. ActivesTheme::destroy($tid);
  75. return redirect()->route($this->route_href)->with('success', '删除成功');
  76. }
  77. }