VideoController.php 3.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121
  1. <?php
  2. namespace App\Http\Controllers\Api\v1;
  3. use App\Http\Controllers\Api\webApp;
  4. use App\Services\Api\VideoService;
  5. use App\Services\RedisService;
  6. use Illuminate\Http\Request;
  7. /**
  8. * 短视频服务管理
  9. * @package App\Http\Controllers\Api
  10. */
  11. class VideoController extends webApp
  12. {
  13. /**
  14. * 列表
  15. * @return array
  16. */
  17. public function index()
  18. {
  19. try {
  20. $params = request()->post();
  21. $pageSize = request()->post('pageSize', 0);
  22. $datas = VideoService::make()->getDataList($params, $pageSize,'', $this->userId);
  23. return message(1010, true, $datas);
  24. } catch (\Exception $exception){
  25. RedisService::set("caches:request:error_video_index", ['trace'=>$exception->getTrace()], 7200);
  26. return message(1018, false, ['error'=>env('APP_DEBUG')? $exception->getMessage() : '']);
  27. }
  28. }
  29. /**
  30. * 列表
  31. * @return array
  32. */
  33. public function list()
  34. {
  35. try {
  36. $params = request()->post();
  37. $pageSize = request()->post('pageSize', 0);
  38. $type = request()->post('type', 1);
  39. // 我的视频
  40. if($type == 1){
  41. $datas = VideoService::make()->getDataList($params, $pageSize,'', $this->userId);
  42. }
  43. // 喜欢的视频
  44. else if ($type == 2){
  45. }
  46. // 收藏的视频
  47. else if ($type == 3){
  48. }
  49. // 观看历史
  50. else if ($type == 4){
  51. }
  52. return message(1010, true, $datas);
  53. } catch (\Exception $exception){
  54. RedisService::set("caches:request:error_video_list", ['trace'=>$exception->getTrace()], 7200);
  55. return message(1018, false, ['error'=>env('APP_DEBUG')? $exception->getTrace() : '']);
  56. }
  57. }
  58. /**
  59. * 详情
  60. * @return array
  61. */
  62. public function info()
  63. {
  64. $id = request()->post('id', 0);
  65. $info = VideoService::make()->getInfo($id, $this->userId);
  66. return message(1010, true, $info);
  67. }
  68. /**
  69. * 发布
  70. * @return array
  71. */
  72. public function publish(Request $request)
  73. {
  74. $params = request()->all();
  75. if(!$result = VideoService::make()->publish($this->userId, $params, $request)){
  76. return message(VideoService::make()->getError(), false);
  77. }else{
  78. return message(VideoService::make()->getError(), true, $result);
  79. }
  80. }
  81. /**
  82. * 状态/上下架
  83. * @return array|mixed
  84. */
  85. public function status()
  86. {
  87. if(!$result = VideoService::make()->status()){
  88. return message(VideoService::make()->getError(), false);
  89. }else{
  90. return message(VideoService::make()->getError(), true, $result);
  91. }
  92. }
  93. /**
  94. * 删除
  95. * @return array|mixed
  96. */
  97. public function delete()
  98. {
  99. if(!$result = VideoService::make()->delete()){
  100. return message(VideoService::make()->getError(), false);
  101. }else{
  102. return message(VideoService::make()->getError(), true);
  103. }
  104. }
  105. }