News.php 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. <?php
  2. namespace app\store\controller\enterprise;
  3. use app\store\controller\Controller;
  4. use app\store\model\enterprise\EnterpriseNews;
  5. use think\facade\Validate;
  6. class News extends Controller
  7. {
  8. protected $newsModel;
  9. public function initialize()
  10. {
  11. parent::initialize(); // TODO: Change the autogenerated stub
  12. $this->newsModel = new EnterpriseNews();
  13. }
  14. /**
  15. * 新增新闻
  16. * @return array
  17. */
  18. public function addNews()
  19. {
  20. $post = $this->postForm();
  21. //dd($post);
  22. $validate = Validate::rule('title', 'require')
  23. ->rule([
  24. 'author' => 'require',
  25. 'contents' => 'require',
  26. 'desc' => 'require',
  27. 'thumb_img' => 'require|number|gt:0',
  28. ]);
  29. if (!$validate->check($post)) {
  30. return $this->renderError($validate->getError());
  31. }
  32. $post['admin_id'] = $this->store['user']['store_user_id'];
  33. if ($this->newsModel->addOne($post)) {
  34. return $this->renderSuccess('提交成功');
  35. }
  36. return $this->renderError($this->newsModel->getError());
  37. }
  38. /**
  39. * 获取新闻
  40. * @param $id
  41. * @return array
  42. */
  43. public function getNews($id)
  44. {
  45. $list = $this->newsModel->getItem($id);
  46. return $this->renderSuccess(compact('list'));
  47. }
  48. /**
  49. * 更新
  50. * @return array
  51. */
  52. public function setNews()
  53. {
  54. $post = $this->postForm();
  55. $validate = Validate::rule('id', 'require|number|gt:0')
  56. ->rule([
  57. 'title' => 'require',
  58. 'author' => 'require',
  59. 'contents' => 'require',
  60. 'desc' => 'require',
  61. 'thumb_img' => 'require|number|gt:0',
  62. ]);
  63. if (!$validate->check($post)) {
  64. return $this->renderError($validate->getError());
  65. }
  66. $post['update_admin_id'] = $this->store['user']['store_user_id'];
  67. $flag = $this->newsModel->updateOne($post);
  68. //log_record(json_encode($flag),'error');
  69. if ($flag) {
  70. return $this->renderSuccess('提交成功');
  71. }
  72. return $this->renderError($this->newsModel->getError());
  73. }
  74. /**
  75. * 新闻列表
  76. * @return array
  77. */
  78. public function newsTable()
  79. {
  80. $list = $this->newsModel->tableItems();
  81. return $this->renderSuccess(compact('list'));
  82. }
  83. /**
  84. * 发布上线
  85. * @return array
  86. */
  87. public function publishNews()
  88. {
  89. $post = $this->postForm();
  90. //dd($post);
  91. $validate = Validate::rule('id', 'require|number|gt:0')
  92. ->rule([
  93. 'pub_status' => 'require|number|between:0,1',
  94. ]);
  95. if (!$validate->check($post)) {
  96. return $this->renderError($validate->getError());
  97. }
  98. if ($this->newsModel->publishOne($post)) {
  99. return $this->renderSuccess('提交成功');
  100. }
  101. return $this->renderError($this->newsModel->getError());
  102. }
  103. /**
  104. * 推荐到首页接口
  105. * @return array
  106. */
  107. public function topNews()
  108. {
  109. $post = $this->postForm();
  110. $validate = Validate::rule('id', 'require|number|gt:0')
  111. ->rule([
  112. 'is_top' => 'require|number|between:0,1',
  113. ]);
  114. if (!$validate->check($post)) {
  115. return $this->renderError($validate->getError());
  116. }
  117. if ($this->newsModel->isTopOne($post)) {
  118. return $this->renderSuccess('提交成功');
  119. }
  120. return $this->renderError($this->newsModel->getError());
  121. }
  122. /**
  123. * 删除
  124. * @return array
  125. */
  126. public function delNews()
  127. {
  128. $post = $this->postForm();
  129. $validate = Validate::rule('id', 'require|number|gt:0');
  130. if (!$validate->check($post)) {
  131. return $this->renderError($validate->getError());
  132. }
  133. if ($this->newsModel->deleteOne($post)) {
  134. return $this->renderSuccess('提交成功');
  135. }
  136. return $this->renderError($this->newsModel->getError());
  137. }
  138. }