|
@@ -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;
|
|
|
}
|