DynamicController.php 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\BaseController;
  4. use App\Http\Validator\DynamicValidator;
  5. use App\Services\DynamicCommentService;
  6. use App\Services\DynamicService;
  7. use Illuminate\Http\Request;
  8. /**
  9. * 动态控制器类
  10. * @author wesmiler
  11. * @since 2020/11/10
  12. * Class DynamicController
  13. * @package App\Http\Controllers
  14. */
  15. class DynamicController extends BaseController
  16. {
  17. /**
  18. * 构造函数
  19. * @author wesmiler
  20. * @since 2020/11/11
  21. * ArticleController constructor.
  22. */
  23. public function __construct()
  24. {
  25. parent::__construct();
  26. $this->service = new DynamicService();
  27. $this->commentService = new DynamicCommentService();
  28. }
  29. /**
  30. * 列表
  31. * @return array
  32. */
  33. public function index(){
  34. $params = request()->all();
  35. return $this->service->getDataList($params);
  36. }
  37. /**
  38. * 动态评论
  39. * @return mixed
  40. */
  41. public function commentList(){
  42. $params = request()->all();
  43. return $this->commentService->getDataList($params);
  44. }
  45. /**
  46. * 发布动态评论
  47. * @param Request $request
  48. * @param DynamicValidator $validate
  49. * @return array
  50. */
  51. public function comment(Request $request, DynamicValidator $validate){
  52. $params = $validate->check($request->all(),'publish');
  53. if(!is_array($params)){
  54. return message($params, false);
  55. }
  56. return $this->commentService->comment($this->userId);
  57. }
  58. /**
  59. * 我的动态
  60. * @return array
  61. */
  62. public function myList(){
  63. $params = request()->all();
  64. $params['user_id'] = $this->userId;
  65. return $this->service->getDataList($params);
  66. }
  67. /**
  68. * 详情
  69. * @return array|mixed
  70. */
  71. public function info(){
  72. $id = request()->get('id',0);
  73. if($id<=0){
  74. return message(1006, false);
  75. }
  76. $info = $this->service->getDetail($id, $this->userId);
  77. return message(1005, true, $info);
  78. }
  79. /**
  80. * 发布动态
  81. * @param Request $request
  82. * @param DynamicValidator $validate
  83. * @return array
  84. */
  85. public function publish(Request $request, DynamicValidator $validate){
  86. $params = $validate->check($request->all(),'publish');
  87. if(!is_array($params)){
  88. return message($params, false);
  89. }
  90. return $this->service->publish($this->userId);
  91. }
  92. }