用户在线列表
This commit is contained in:
@@ -310,7 +310,7 @@ class Friend extends Model
|
|||||||
$user_idd = array_diff($user_idd, $host['is_preside_user']); // 从数组中移除
|
$user_idd = array_diff($user_idd, $host['is_preside_user']); // 从数组中移除
|
||||||
if($user_idd){
|
if($user_idd){
|
||||||
//插入/更新心动表
|
//插入/更新心动表
|
||||||
$this->addUserHeart($to_uid,$friend['id'],$sumPrice,$room_id);
|
$this->addUserHeart($uid,$to_uid,$friend['id'],$sumPrice,$room_id);
|
||||||
//送礼产生心动值并计算 判断拉取用户上麦还是换麦
|
//送礼产生心动值并计算 判断拉取用户上麦还是换麦
|
||||||
//生成新排名 判断抱上麦 还是换麦
|
//生成新排名 判断抱上麦 还是换麦
|
||||||
$this->pullUserPit($room_id,$friend['id']);
|
$this->pullUserPit($room_id,$friend['id']);
|
||||||
@@ -318,7 +318,7 @@ class Friend extends Model
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
//插入/更新心动表
|
//插入/更新心动表
|
||||||
$this->addUserHeart($user_idd,$friend['id'],$sumPrice,$room_id);
|
$this->addUserHeart($uid,$user_idd,$friend['id'],$sumPrice,$room_id);
|
||||||
//送礼产生心动值并计算 判断拉取用户上麦还是换麦
|
//送礼产生心动值并计算 判断拉取用户上麦还是换麦
|
||||||
//生成新排名 判断抱上麦 还是换麦
|
//生成新排名 判断抱上麦 还是换麦
|
||||||
$this->pullUserPit($room_id,$friend['id']);
|
$this->pullUserPit($room_id,$friend['id']);
|
||||||
@@ -334,7 +334,7 @@ class Friend extends Model
|
|||||||
$host[] = db::name('vs_room_pit')->where(['room_id' => $room_id,'pit_number' => 9])->value('user_id');
|
$host[] = db::name('vs_room_pit')->where(['room_id' => $room_id,'pit_number' => 9])->value('user_id');
|
||||||
$host[] = db::name('vs_room_pit')->where(['room_id' => $room_id,'pit_number' => 10])->value('user_id');
|
$host[] = db::name('vs_room_pit')->where(['room_id' => $room_id,'pit_number' => 10])->value('user_id');
|
||||||
|
|
||||||
$is_preside_user = null;
|
$is_preside_user = [];
|
||||||
$is_preside = 0;
|
$is_preside = 0;
|
||||||
$user_ids = explode(",", $to_uid);
|
$user_ids = explode(",", $to_uid);
|
||||||
foreach ($user_ids as $value) {
|
foreach ($user_ids as $value) {
|
||||||
@@ -415,8 +415,6 @@ class Friend extends Model
|
|||||||
!in_array($rel['user2_id'], $usedUsers)) {
|
!in_array($rel['user2_id'], $usedUsers)) {
|
||||||
// 将符合条件的用户对添加到排名列表中
|
// 将符合条件的用户对添加到排名列表中
|
||||||
$ranking[] = [
|
$ranking[] = [
|
||||||
// 'left' => $rel['user1_id'],
|
|
||||||
// 'right' => $rel['user2_id'],
|
|
||||||
'heart_value' => $rel['heart_value'],
|
'heart_value' => $rel['heart_value'],
|
||||||
'id' => $rel['id'],
|
'id' => $rel['id'],
|
||||||
'user1_id' => $rel['user1_id'],
|
'user1_id' => $rel['user1_id'],
|
||||||
@@ -444,8 +442,6 @@ class Friend extends Model
|
|||||||
}
|
}
|
||||||
if(in_array($rel1['user1_id'], $usedUsers)){
|
if(in_array($rel1['user1_id'], $usedUsers)){
|
||||||
$ranking1[] = [
|
$ranking1[] = [
|
||||||
// 'left' => $rel1['user1_id'],
|
|
||||||
// 'right' => $rel1['user2_id'],
|
|
||||||
'heart_value' => 0,
|
'heart_value' => 0,
|
||||||
'id' => $rel1['id'],
|
'id' => $rel1['id'],
|
||||||
'user1_id' => -1,
|
'user1_id' => -1,
|
||||||
@@ -455,8 +451,6 @@ class Friend extends Model
|
|||||||
}
|
}
|
||||||
if(in_array($rel1['user2_id'], $usedUsers)){
|
if(in_array($rel1['user2_id'], $usedUsers)){
|
||||||
$ranking1[] = [
|
$ranking1[] = [
|
||||||
// 'left' => $rel1['user1_id'],
|
|
||||||
// 'right' => $rel1['user2_id'],
|
|
||||||
'heart_value' => 0,
|
'heart_value' => 0,
|
||||||
'id' => $rel1['id'],
|
'id' => $rel1['id'],
|
||||||
'user1_id' => $rel1['user1_id'],
|
'user1_id' => $rel1['user1_id'],
|
||||||
@@ -481,8 +475,6 @@ class Friend extends Model
|
|||||||
}
|
}
|
||||||
if(in_array($rel1['user1_id'], $usedUsers)){
|
if(in_array($rel1['user1_id'], $usedUsers)){
|
||||||
$ranking2[] = [
|
$ranking2[] = [
|
||||||
// 'left' => $rel1['user1_id'],
|
|
||||||
// 'right' => $rel1['user2_id'],
|
|
||||||
'heart_value' => 0,
|
'heart_value' => 0,
|
||||||
'id' => $rel1['id'],
|
'id' => $rel1['id'],
|
||||||
'user1_id' => -1,
|
'user1_id' => -1,
|
||||||
@@ -492,8 +484,6 @@ class Friend extends Model
|
|||||||
}
|
}
|
||||||
if(in_array($rel1['user2_id'], $usedUsers)){
|
if(in_array($rel1['user2_id'], $usedUsers)){
|
||||||
$ranking2[] = [
|
$ranking2[] = [
|
||||||
// 'left' => $rel1['user1_id'],
|
|
||||||
// 'right' => $rel1['user2_id'],
|
|
||||||
'heart_value' => 0,
|
'heart_value' => 0,
|
||||||
'id' => $rel1['id'],
|
'id' => $rel1['id'],
|
||||||
'user1_id' => $rel1['user1_id'],
|
'user1_id' => $rel1['user1_id'],
|
||||||
@@ -520,7 +510,7 @@ class Friend extends Model
|
|||||||
$heart_data = $this->getRanking($room_id,$friend_id);
|
$heart_data = $this->getRanking($room_id,$friend_id);
|
||||||
$pit = [];
|
$pit = [];
|
||||||
$pit_number_array = [2=>5,1=>6,3=>4,5=>2,6=>1,4=>3]; //麦位对应关系
|
$pit_number_array = [2=>5,1=>6,3=>4,5=>2,6=>1,4=>3]; //麦位对应关系
|
||||||
$pit_number_array_reverse = [0=>2,1=>1,2=>3];
|
$pit_number_array_reverse = [0=>2,1=>1,2=>3,3=>4,4=>5,5=>6];
|
||||||
if($heart_data){
|
if($heart_data){
|
||||||
//排麦位
|
//排麦位
|
||||||
$pit_unique = [];
|
$pit_unique = [];
|
||||||
@@ -529,50 +519,26 @@ class Friend extends Model
|
|||||||
if(count($pit) >= 6){
|
if(count($pit) >= 6){
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if($value['user1_id'] == -1){
|
if($value['user1_id'] == -1){
|
||||||
$user_sex = db::name('user')->where('id',$value['user2_id'])->value('sex');
|
|
||||||
if($user_sex == 2){
|
|
||||||
if(!in_array($value['user2_id'],$pit_unique)){
|
if(!in_array($value['user2_id'],$pit_unique)){
|
||||||
$pit[$pit_number_array_reverse[$key]] = $value['user2_id'];
|
$pit[$pit_number_array_reverse[$key]] = $value['user2_id'];
|
||||||
}
|
}
|
||||||
}else{
|
|
||||||
if(!in_array($value['user2_id'],$pit_unique)){
|
|
||||||
$pit[$pit_number_array[$pit_number_array_reverse[$key]]] = $value['user2_id'];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
if($value['user2_id'] == -1){
|
if($value['user2_id'] == -1){
|
||||||
$user_sex = db::name('user')->where('id',$value['user1_id'])->value('sex');
|
|
||||||
if($user_sex == 2){
|
|
||||||
if(!in_array($value['user1_id'],$pit_unique)){
|
if(!in_array($value['user1_id'],$pit_unique)){
|
||||||
$pit[$pit_number_array_reverse[$key]] = $value['user1_id'];
|
$pit[$pit_number_array_reverse[$key]] = $value['user1_id'];
|
||||||
}
|
}
|
||||||
}else{
|
|
||||||
if(!in_array($value['user1_id'],$pit_unique)){
|
|
||||||
$pit[$pit_number_array[$pit_number_array_reverse[$key]]] = $value['user1_id'];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
|
||||||
if($value['user1_id']!=-1 && $value['user2_id']!=-1){
|
if($value['user1_id']!=-1 && $value['user2_id']!=-1){
|
||||||
//判断用户1性别
|
|
||||||
$user1_sex = db::name('user')->where('id',$value['user1_id'])->value('sex');
|
|
||||||
if($user1_sex == 2){
|
|
||||||
if(!in_array($value['user1_id'],$pit_unique)){
|
if(!in_array($value['user1_id'],$pit_unique)){
|
||||||
$pit[$pit_number_array_reverse[$key]] = $value['user1_id'];
|
$pit[$pit_number_array_reverse[$key]] = $value['user1_id'];
|
||||||
}
|
}
|
||||||
if(!in_array($value['user2_id'],$pit_unique)){
|
if(!in_array($value['user2_id'],$pit_unique)){
|
||||||
$pit[$pit_number_array[$pit_number_array_reverse[$key]]] = $value['user2_id'];
|
$pit[$pit_number_array[$pit_number_array_reverse[$key]]] = $value['user2_id'];
|
||||||
}
|
}
|
||||||
}else{
|
|
||||||
if(!in_array($value['user1_id'],$pit_unique)){
|
|
||||||
$pit[$pit_number_array_reverse[$key]] = $value['user2_id'];
|
|
||||||
}
|
|
||||||
if(!in_array($value['user2_id'],$pit_unique)){
|
|
||||||
$pit[$pit_number_array[$pit_number_array_reverse[$key]]] = $value['user1_id'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//用户去重
|
//用户去重
|
||||||
@@ -691,14 +657,14 @@ class Friend extends Model
|
|||||||
|
|
||||||
//交友厅游戏开始后送礼后一系列操作
|
//交友厅游戏开始后送礼后一系列操作
|
||||||
//插入/更新心动表
|
//插入/更新心动表
|
||||||
public function addUserHeart($user_id,$friend_id,$value,$room_id){
|
public function addUserHeart($uid,$user_id,$friend_id,$value,$room_id){
|
||||||
//给多个用户送礼
|
//给多个用户送礼
|
||||||
$user_ids = explode(",", $user_id);
|
$user_ids = explode(",", $user_id);
|
||||||
$heart_value = $value;//心动值
|
$heart_value = $value;//心动值
|
||||||
for ($i = 0; $i < count($user_ids); $i++) {
|
for ($i = 0; $i < count($user_ids); $i++) {
|
||||||
// 处理用户ID顺序
|
// 处理用户ID顺序
|
||||||
$user1 = min(UID, $user_ids[$i]);
|
$user1 = min($uid, $user_ids[$i]);
|
||||||
$user2 = max(UID, $user_ids[$i]);
|
$user2 = max($uid, $user_ids[$i]);
|
||||||
// 更新心动关系表
|
// 更新心动关系表
|
||||||
$relation = db::name('vs_user_friending_heart')->where([
|
$relation = db::name('vs_user_friending_heart')->where([
|
||||||
'user1_id' => $user1,
|
'user1_id' => $user1,
|
||||||
@@ -723,10 +689,10 @@ class Friend extends Model
|
|||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//修改用户行动连线状态
|
//修改用户心动连线状态
|
||||||
$relation = db::name('vs_user_friending_heart')->where("(user1_id=".UID." OR user2_id=".UID.") AND friend_id=$friend_id AND room_id=$room_id AND status!=3")->order('heart_value desc')->find();
|
$relation = db::name('vs_user_friending_heart')->where("(user1_id=".$uid." OR user2_id=".$uid.") AND friend_id=$friend_id AND room_id=$room_id AND status!=3")->order('heart_value desc')->find();
|
||||||
if($relation){
|
if($relation){
|
||||||
db::name('vs_user_friending_heart')->where("(user1_id=".UID." OR user2_id=".UID.") AND friend_id=$friend_id AND room_id=$room_id AND status!=3")->update(['status'=>2]);
|
db::name('vs_user_friending_heart')->where("(user1_id=".$uid." OR user2_id=".$uid.") AND friend_id=$friend_id AND room_id=$room_id AND status!=3")->update(['status'=>2]);
|
||||||
db::name('vs_user_friending_heart')->where(['id'=>$relation['id']])->update(['status'=>1]);
|
db::name('vs_user_friending_heart')->where(['id'=>$relation['id']])->update(['status'=>1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user