瀏覽代碼

浏览历史

lizhen_gitee 10 月之前
父節點
當前提交
6bccbdc378
共有 1 個文件被更改,包括 43 次插入1 次删除
  1. 43 1
      application/api/controller/Tvindex.php

+ 43 - 1
application/api/controller/Tvindex.php

@@ -7,7 +7,7 @@ use think\Db;
 
 class Tvindex extends Api
 {
-    protected $noNeedLogin = '*';
+    protected $noNeedLogin = ['indexdata','video_list','videoinfo','zhuanti','tudingc','search','history'];
     protected $noNeedRight = '*';
 
     //首页
@@ -165,6 +165,22 @@ class Tvindex extends Api
             ->orderRaw('rand()')->limit(4)->select();
         $guess_list = list_domain_image($guess_list, ['image']);
 
+        //记录浏览历史
+        if($this->auth->isLogin()){
+            $view_map = [
+                'user_id'  => $this->auth->id,
+                'video_id' => $id,
+            ];
+            $check_view = Db::name('video_view')->where($view_map)->find();
+            if($check_view){
+                Db::name('video_view')->where($view_map)->update(['updatetime'=>time()]);
+            }else{
+                $view_map['createtime'] = time();
+                $view_map['updatetime'] = time();
+                Db::name('video_view')->insertGetId($view_map);
+            }
+        }
+
         //
         $result = [
             'video_info' => $info,
@@ -212,4 +228,30 @@ class Tvindex extends Api
         $this->success('视频', $list);
     }
 
+    //浏览历史
+    public function history(){
+        if($this->auth->isLogin()){
+            $video_view = Db::name('video_view')->where('user_id',$this->auth->id)->order('updatetime desc')->group('video_id')->column('video_id,updatetime');
+
+            if(!empty($video_view)){
+
+                $video_ids = implode(',',array_keys($video_view));
+
+                $list = Db::name('video')->field('id, title, image, is_pay')->where(['status' => 1, 'inject_status' => 2])->where('id','IN',$video_ids)->orderRaw('field(id,'.$video_ids.')')->page($this->page,$this->pagenum)->select();
+                $list = list_domain_image($list, ['image']);
+                foreach($list as $key => $val){
+                    $list[$key]['history_time'] = $video_view[$val['id']];
+                }
+
+            }else{
+                $list = [];
+            }
+
+        }else{
+            $list = [];
+        }
+
+        $this->success('视频', $list);
+    }
+
 }