AdminActivityReviewController.php 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798
  1. <?php
  2. namespace app\activity\controller;
  3. use app\activity\model\ActivityModel;
  4. use app\activity\model\ActivityReviewModel;
  5. use cmf\controller\AdminBaseController;
  6. class AdminActivityReviewController extends AdminBaseController
  7. {
  8. /**
  9. * 回顾列表
  10. */
  11. public function index()
  12. {
  13. $this->checkSite();
  14. $param = $this->request->param();
  15. //搜索条件
  16. $sessionAdminId = session('ADMIN_ID');
  17. $where = [['user_id', '=', $sessionAdminId]];
  18. if (!empty($param['activity_id'])) {
  19. $where[] = ['activity_id', '=', $param['activity_id']];
  20. }
  21. if (!empty($param['keyword'])) {
  22. $where[] = ['title', 'like', "%{$param['keyword']}%"];
  23. }
  24. $activity = ActivityReviewModel::with('activity')->where($where)->order('create_time', 'DESC')->paginate(10, false, ['query' => $param]);
  25. $this->assign('activity_id', isset($param['activity_id']) ? $param['activity_id'] : '');
  26. $this->assign('keyword', isset($param['keyword']) ? $param['keyword'] : '');
  27. $this->assign('list', $activity->items());
  28. $this->assign('page', $activity->render());
  29. return $this->fetch();
  30. }
  31. /**
  32. * 添加回顾
  33. */
  34. public function add()
  35. {
  36. return $this->fetch();
  37. }
  38. /**
  39. * 添加回顾提交
  40. */
  41. public function addPost()
  42. {
  43. if ($this->request->isPost()) {
  44. $data = $this->request->post();
  45. $review = ActivityReviewModel::where('activity_id', $data['activity_id'])->find();
  46. if (!empty($review)) {
  47. $this->error('该活动已有回顾,请勿重复添加');
  48. }
  49. $data['create_time'] = time();
  50. ActivityReviewModel::create($data);
  51. ActivityModel::update(['have_review' => 1, 'id' => $data['activity_id']]);
  52. $this->success('添加成功!', url('AdminActivityReview/index'));
  53. }
  54. }
  55. /**
  56. * 编辑活动
  57. */
  58. public function edit()
  59. {
  60. $id = $this->request->param('id', 0, 'intval');
  61. $info = ActivityReviewModel::get($id, ['activity']);
  62. $this->assign('info', $info);
  63. return $this->fetch();
  64. }
  65. /**
  66. * 编辑活动提交
  67. */
  68. public function editPost()
  69. {
  70. if ($this->request->isPost()) {
  71. $data = $this->request->post();
  72. $review = ActivityReviewModel::where('activity_id', $data['activity_id'])->where('id', '<>', $data['id'])->find();
  73. if (!empty($review)) {
  74. $this->error('该活动已有回顾,请勿重复添加');
  75. }
  76. ActivityReviewModel::update($data, ['id' => $data['id']]);
  77. ActivityModel::update(['have_review' => 1, 'id' => $data['activity_id']]);
  78. $this->success('编辑成功!', url('AdminActivityReview/index'));
  79. }
  80. }
  81. }