wesmiler 2 лет назад
Родитель
Сommit
de1eb4ad29
3 измененных файлов с 32 добавлено и 0 удалено
  1. 13 0
      app/Http/Controllers/Api/v1/LiveController.php
  2. 18 0
      app/Services/LiveService.php
  3. 1 0
      routes/api.php

+ 13 - 0
app/Http/Controllers/Api/v1/LiveController.php

@@ -129,6 +129,19 @@ class LiveController extends webApp
     }
 
     /**
+     * 离开直播间
+     * @return array|mixed
+     */
+    public function leave()
+    {
+        if(!$result = LiveService::make()->leave($this->userId)){
+            return showJson(LiveService::make()->getError(), false);
+        }else{
+            return showJson(LiveService::make()->getError(), true, $result);
+        }
+    }
+
+    /**
      * 点赞
      * @return array|mixed
      */

+ 18 - 0
app/Services/LiveService.php

@@ -609,6 +609,24 @@ class LiveService extends BaseService
     }
 
     /**
+     * 离开直播间
+     * @return bool
+     */
+    public function leave($userId)
+    {
+        $id = request()->post('id', 0);
+        if ($id && !$info = $this->getCacheInfo($id)) {
+            $this->error = 2981;
+            return false;
+        }
+        $updateData = ['is_online'=> 2, 'update_time'=> time()];
+        VideoCollectModel::where(['user_id'=>$userId,'type'=>1,'source_type'=>2,'collect_id'=> $id,'mark'=>1])->update($updateData);
+
+        $this->error = 1003;
+        return true;
+    }
+
+    /**
      * 点赞
      * @return bool
      */

+ 1 - 0
routes/api.php

@@ -59,6 +59,7 @@ Route::prefix('v1')->group(function(){
     Route::post('/live/play', [\App\Http\Controllers\Api\v1\LiveController::class, 'updatePlay']);
     Route::post('/live/updatePlayTask', [\App\Http\Controllers\Api\v1\LiveController::class, 'updatePlayTask']);
     Route::post('/live/status', [\App\Http\Controllers\Api\v1\LiveController::class, 'status']);
+    Route::post('/live/leave', [\App\Http\Controllers\Api\v1\LiveController::class, 'leave']);
     Route::post('/live/like', [\App\Http\Controllers\Api\v1\LiveController::class, 'like']);
     Route::post('/live/category/search', [\App\Http\Controllers\Api\v1\LiveCategoryController::class, 'search']);
     Route::post('/live/category/options', [\App\Http\Controllers\Api\v1\LiveCategoryController::class, 'options']);