|  | @@ -186,6 +186,7 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | +    //这里不用连user_active表,完全使用user表的active_time,user_active表只做离线用
 | 
	
		
			
				|  |  |      //同城
 | 
	
		
			
				|  |  |      public function samecity(){
 | 
	
		
			
				|  |  |          $gender = input_post('gender','all');
 | 
	
	
		
			
				|  | @@ -203,7 +204,7 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |             // 'user.longitude' => ['neq',''],
 | 
	
		
			
				|  |  |             // 'user.latitude' => ['neq',''],
 | 
	
		
			
				|  |  |             // 'user.is_online|user.is_livebc' => 1, //完全不考虑直播与语聊的权重,只用活跃做排序
 | 
	
		
			
				|  |  | -           // 'user.is_active' => 1,//完全不考虑直播与语聊的权重,只用活跃做排序
 | 
	
		
			
				|  |  | +            'user.active_time' => ['gt',time()-86400],
 | 
	
		
			
				|  |  |          ];
 | 
	
		
			
				|  |  |          if($gender != 'all'){
 | 
	
		
			
				|  |  |              $map['user.gender'] = $gender;
 | 
	
	
		
			
				|  | @@ -215,7 +216,7 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |          $field = [
 | 
	
		
			
				|  |  |              'user.id','user.username','user.nickname','user.birthday','user.height','user.longitude','user.latitude','user.avatar','user.audio_bio','user.bio','user.gender'
 | 
	
		
			
				|  |  |          ];
 | 
	
		
			
				|  |  | -        $list = Db::name('user')->alias('user')->field($field)->where($map)->order('is_active desc,active_time desc')->autopage()->select();
 | 
	
		
			
				|  |  | +        $list = Db::name('user')->alias('user')->field($field)->where($map)->order('user.active_time desc')->autopage()->select();
 | 
	
		
			
				|  |  |          //dump($list);
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          $list = list_domain_image($list,['avatar']);
 | 
	
	
		
			
				|  | @@ -224,8 +225,15 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |              $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).'km';
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              //状态
 | 
	
		
			
				|  |  | -            $one['active_text'] = '在线';
 | 
	
		
			
				|  |  | +            $one['active_text'] = '刚刚离线';
 | 
	
		
			
				|  |  | +            if($one['active_time'] > time()-21600){
 | 
	
		
			
				|  |  | +                $one['active_text'] = '1小时内在线';
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if($one['active_time'] > time()-3600){
 | 
	
		
			
				|  |  | +                $one['active_text'] = '在线';
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              $list[$key] = $one;
 | 
	
		
			
				|  |  |          }
 | 
	
	
		
			
				|  | @@ -252,7 +260,7 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |             // 'user.longitude' => ['between',[$this->auth->longitude - 0.1,$this->auth->longitude + 0.1]],
 | 
	
		
			
				|  |  |             // 'user.latitude' => ['between',[$this->auth->latitude - 0.1,$this->auth->latitude + 0.1]],
 | 
	
		
			
				|  |  |              // 'user.is_online|user.is_livebc' => 1, //完全不考虑直播与语聊的权重,只用活跃做排序
 | 
	
		
			
				|  |  | -            //'user.is_active' => 1,//完全不考虑直播与语聊的权重,只用活跃做排序
 | 
	
		
			
				|  |  | +            'user.active_time' => ['gt',time()-86400],
 | 
	
		
			
				|  |  |          ];
 | 
	
		
			
				|  |  |          if($gender != 'all'){
 | 
	
		
			
				|  |  |              $map['user.gender'] = $gender;
 | 
	
	
		
			
				|  | @@ -265,7 +273,7 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |              'user.id','user.username','user.nickname','user.birthday','user.height','user.longitude','user.latitude','user.avatar','user.audio_bio','user.bio','user.gender'
 | 
	
		
			
				|  |  |          ];
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -        $list = Db::name('user')->alias('user')->field($field)->where($map)->order('is_active desc,active_time desc')->autopage()->select();
 | 
	
		
			
				|  |  | +        $list = Db::name('user')->alias('user')->field($field)->where($map)->order('user.active_time desc')->autopage()->select();
 | 
	
		
			
				|  |  |          //dump($list);exit;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |          $list = list_domain_image($list,['avatar']);
 | 
	
	
		
			
				|  | @@ -274,8 +282,15 @@ class Usercenter extends Api
 | 
	
		
			
				|  |  |              $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).'km';
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |              //状态
 | 
	
		
			
				|  |  | -            $one['active_text'] = '在线';
 | 
	
		
			
				|  |  | +            $one['active_text'] = '刚刚离线';
 | 
	
		
			
				|  |  | +            if($one['active_time'] > time()-21600){
 | 
	
		
			
				|  |  | +                $one['active_text'] = '1小时内在线';
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +            if($one['active_time'] > time()-3600){
 | 
	
		
			
				|  |  | +                $one['active_text'] = '在线';
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  |              
 | 
	
		
			
				|  |  |              $list[$key] = $one;
 | 
	
		
			
				|  |  |          }
 |