浏览代码

用户活跃度改为离线计划任务

lizhen_gitee 3 年之前
父节点
当前提交
f43dd26ade

+ 2 - 2
application/api/controller/Usercenter.php

@@ -178,7 +178,7 @@ class Usercenter extends Api
         foreach($list as $key => $one){
             $one['age'] = birthtime_to_age($one['birthday']);
            // $one['distance'] = $this->calc_map_distance([$this->auth->longitude,$this->auth->latitude],[$one['longitude'],$one['latitude']]);
-            $one['distance'] = rand(0,10).'公里';
+            $one['distance'] = rand(0,10).'km';
 
             $list[$key] = $one;
         }
@@ -226,7 +226,7 @@ class Usercenter extends Api
         foreach($list as $key => $one){
             $one['age'] = birthtime_to_age($one['birthday']);
             //$one['distance'] = $this->calc_map_distance([$this->auth->longitude,$this->auth->latitude],[$one['longitude'],$one['latitude']]);
-            $one['distance'] = rand(0,10).'公里';
+            $one['distance'] = rand(0,10).'km';
             $list[$key] = $one;
         }
 

+ 10 - 0
application/common/controller/Api.php

@@ -80,6 +80,8 @@ class Api
         $this->_initialize();
         //日志
         $this->request_log();
+        //用户活跃
+        $this->user_active();
 
         // 前置操作方法
         if ($this->beforeActionList) {
@@ -359,6 +361,14 @@ class Api
         ];
         $request_id = db('api_request_log')->insertGetId($data);
         defined('API_REQUEST_ID') or define('API_REQUEST_ID', $request_id);
+
+    }
+
+    //更新用户活跃
+    protected function user_active(){
+        if($this->auth->isLogin()){
+            Db::name('user_active')->where('user_id',$this->auth->id)->update(['requesttime'=>time()]);
+        }
     }
 
     protected function request_log_update($log_result){

+ 4 - 0
application/common/library/Auth.php

@@ -263,6 +263,8 @@ class Auth
 
             //注册钱包
             Db::name('user_wallet')->insertGetId(['user_id'=>$user->id]);
+            //注册用户活跃
+            Db::name('user_active')->insertGetId(['user_id'=>$user->id]);
 
             //加入id 1,2,3 的圈子
             $topic_data = [
@@ -330,6 +332,8 @@ class Auth
 
             //注册钱包
             Db::name('user_wallet')->insertGetId(['user_id'=>$user->id]);
+            //注册用户活跃
+            Db::name('user_active')->insertGetId(['user_id'=>$user->id]);
 
             //加入id 1,2,3 的圈子
             $topic_data = [

+ 10 - 0
application/index/controller/Plantask.php

@@ -11,6 +11,15 @@ use think\Cache;
 class Plantask extends Controller
 {
 
+    //定时跑用户活跃,改成离线
+    public function user_active(){
+        $actitime = time() - 7200;
+        //$map = ['requesttime' < $actitime];
+
+        $sql = 'update `mt_user` set is_active = 0 where id in (select user_id from mt_user_active where requesttime < '.$actitime.')';
+        //echo $sql;
+        db()->query($sql);
+    }
     //代替公会的人10秒内发出五句话
     public function firstuser_send()
     {
@@ -53,6 +62,7 @@ class Plantask extends Controller
         }
 
     }
+    //二期之后,废弃
     //代替公会的人发出第一句话
     public function firstword_send()
     {

+ 1 - 1
public/assets/js/backend/user/user.js

@@ -8,7 +8,7 @@ define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function ($, undefin
                     index_url: 'user/user/index' + location.search,
                     add_url: 'user/user/add',
                     edit_url: 'user/user/edit',
-                    del_url: 'user/user/del',
+//                    del_url: 'user/user/del',
                     multi_url: 'user/user/multi',
                     import_url: 'user/user/import',
                     table: 'user',