Notice.php 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677
  1. <?php
  2. namespace app\admin\controller;
  3. use app\admin\AdminBaseController;
  4. use app\common\model\NoticeModel;
  5. use app\admin\validate\NoticeValidate;
  6. use think\exception\ValidateException;
  7. class Notice extends AdminBaseController
  8. {
  9. /**
  10. * 列表
  11. */
  12. public function index()
  13. {
  14. return view('', [
  15. 'status_list' => NoticeModel::STATUS,
  16. ]);
  17. }
  18. public function listNotice()
  19. {
  20. $map = $this->dealEqualInput(['status']);
  21. $list = NoticeModel::where($map)
  22. ->order(['priority' => 'desc', 'update_time' => 'desc'])
  23. ->limit(input('limit'))
  24. ->page(input('page'))
  25. ->append(['status_text'])
  26. ->select();
  27. $count = NoticeModel::where($map)->count();
  28. if ($count == 0) {
  29. ajax_return(1, '未查询到数据');
  30. }
  31. list_return($list, $count);
  32. }
  33. public function delNotice()
  34. {
  35. $id_arr = input('id_arr/a');
  36. NoticeModel::destroy($id_arr);
  37. ajax_return();
  38. }
  39. /**
  40. * 编辑
  41. */
  42. public function noticeForm()
  43. {
  44. $id = input('id/d, 0');
  45. $info = NoticeModel::find($id);
  46. return view('', [
  47. 'info' => $info,
  48. 'status_list' => NoticeModel::STATUS,
  49. ]);
  50. }
  51. public function editNotice()
  52. {
  53. $data = input('post.');
  54. try {
  55. validate(NoticeValidate::class)->check($data);
  56. } catch (ValidateException $e) {
  57. ajax_return(1, $e->getError());
  58. }
  59. if (empty($data['id'])) {
  60. NoticeModel::create($data);
  61. } else {
  62. NoticeModel::update($data, ['id' => $data['id']]);
  63. }
  64. ajax_return();
  65. }
  66. }