Merge remote-tracking branch 'origin/develop' into develop

This commit is contained in:
2025-10-29 09:27:35 +08:00
4 changed files with 81 additions and 24 deletions

View File

@@ -876,6 +876,12 @@ class Room extends adminApi
} }
} }
} }
//排序
$sort = input('sort', '');//排序 越大越靠前
if($sort !== ""){
$data['sort'] = $sort;
}
$res = db::name('vs_room')->where('id',$room_id)->update($data); $res = db::name('vs_room')->where('id',$room_id)->update($data);
if($res){ if($res){
return V(1,"成功"); return V(1,"成功");

View File

@@ -46,6 +46,18 @@ class Theme extends controller
$reslut['mine_nor'] = get_system_config_value('web_site').'/static/theme/'.$url.'/mine_nor.png'; $reslut['mine_nor'] = get_system_config_value('web_site').'/static/theme/'.$url.'/mine_nor.png';
} }
return V(1,'操作成功', $reslut); //版本号
$app_version = request()->header('App-Version');
$system = request()->header('system');
$api_version = 0;
if ($system == 'iOS') {
$api_versions = db::name('version')->where(['type' => 2, 'status' => 1])->order('id', 'desc')->find();
$result = version_compare($api_versions['oldversion'],$app_version);
if ($result < 0) {
$api_version = 1;
}
}
return V(1,'操作成功', $reslut,$api_version);
} }
} }

View File

@@ -200,8 +200,11 @@ class Room extends Model
$map['is_top'] = $is_top; $map['is_top'] = $is_top;
} }
$list = db::name('vs_room')->field('id as room_id,room_number,user_id,room_name,room_cover,room_password,today_hot_value as hot_value,label_id,is_show_room') $list = db::name('vs_room')
->where($map)->order('hot_value desc, id asc')->page($page, $page_limit)->select(); ->field('id as room_id,room_number,user_id,room_name,room_cover,room_password,today_hot_value as hot_value,label_id,is_show_room')
->where($map)
->order('sort desc,hot_value desc')
->page($page, $page_limit)->select();
foreach ($list as &$v){ foreach ($list as &$v){
$v['user_list'] = model('RoomUser')->get_room_user_list($v['room_id']); $v['user_list'] = model('RoomUser')->get_room_user_list($v['room_id']);
@@ -1813,10 +1816,10 @@ class Room extends Model
return ['code' => 0, 'msg' => '参数错误', 'data' => null]; return ['code' => 0, 'msg' => '参数错误', 'data' => null];
} }
$user_in_room = db::name('vs_room_visitor')->where(['room_id' => $room_id,'user_id' => $user_id])->find(); $user_in_room = db::name('vs_room_visitor')->where(['room_id' => $room_id,'user_id' => $user_id])->find();
if(!$user_in_room){ // if(!$user_in_room){
// return ['code' => 0, 'msg' => '您已不在此房间', 'data' => null]; //// return ['code' => 0, 'msg' => '您已不在此房间', 'data' => null];
return ['code' => 0, 'msg' => '', 'data' => null]; // return ['code' => 0, 'msg' => '', 'data' => null];
} // }
$room = db::name('vs_room')->where(['id' => $room_id])->find(); $room = db::name('vs_room')->where(['id' => $room_id])->find();
$song_list = null; $song_list = null;
$next_song_info = null; $next_song_info = null;

View File

@@ -80,24 +80,36 @@ class RoomPit extends Model
$text['pit_number'] = $pit_number; $text['pit_number'] = $pit_number;
//聊天室推送系统消息 //聊天室推送系统消息
model('Chat')->sendMsg(1003,$room_id,$text); model('Chat')->sendMsg(1003,$room_id,$text);
if($pit_number == 9){
//推送消息给设置此用户开播提醒的人 //查看此房间是否处于pk中
$remind_users = db::name('vs_user_live_remind')->where('remind_user_id' , $user_id)->select('user_id'); $is_pk = db::name('vs_room_pk')->where(['room_id_a' => $room_id])->where(['status' => ['in',[2,3,4]]])->value('room_id_b') ?? 0;
$remind_user = []; if(!$is_pk){
foreach ($remind_users as $k=>$v){ $is_pk = db::name('vs_room_pk')->where(['room_id_b' => $room_id])->where(['status' => ['in',[2,3,4]]])->value('room_id_a') ?? 0;
$remind_user[$k] = 'u'.$v['user_id'];
if($k >= 499){ //批量发单聊消息 最大数500个
//结束整个循环
break;
}
}
$content = [
'type' => 1,
'roomID' => $room_id,
'content' => '您关注的用户' . $FromUserInfo['nickname'] . '正在直播,快去围观吧!',
];
model('Tencent')->batchsendmsg($remind_user,json_encode($content));
} }
if($is_pk > 0){
//如果此房间是pk中则推送给pk中房间的成员
$text['is_pk'] = 1;
model('Chat')->sendMsg(1003,$is_pk,$text);
}
// if($pit_number == 9){
// //推送消息给设置此用户开播提醒的人
// $remind_users = db::name('vs_user_live_remind')->where('remind_user_id' , $user_id)->select('user_id');
// $remind_user = [];
// foreach ($remind_users as $k=>$v){
// $remind_user[$k] = 'u'.$v['user_id'];
// if($k >= 499){ //批量发单聊消息 最大数500个
// //结束整个循环
// break;
// }
// }
// $content = [
// 'type' => 1,
// 'roomID' => $room_id,
// 'content' => '您关注的用户' . $FromUserInfo['nickname'] . '正在直播,快去围观吧!',
// ];
// model('Tencent')->batchsendmsg($remind_user,json_encode($content));
// }
$reslut = db::name('vs_room_pit_apply')->where(['user_id' => $user_id, 'room_id' => $room_id, 'status' => 0])->delete(); $reslut = db::name('vs_room_pit_apply')->where(['user_id' => $user_id, 'room_id' => $room_id, 'status' => 0])->delete();
if($reslut){ if($reslut){
$count = db::name('vs_room_pit_apply')->where(['room_id' => $room_id,'status' => 0])->count(); $count = db::name('vs_room_pit_apply')->where(['room_id' => $room_id,'status' => 0])->count();
@@ -171,6 +183,16 @@ class RoomPit extends Model
model('Chat')->sendMsg(1022,$room_id,$text); model('Chat')->sendMsg(1022,$room_id,$text);
}else{ }else{
model('Chat')->sendMsg(1004,$room_id,$text); model('Chat')->sendMsg(1004,$room_id,$text);
//查看此房间是否处于pk中
$is_pk = db::name('vs_room_pk')->where(['room_id_a' => $room_id])->where(['status' => ['in',[2,3,4]]])->value('room_id_b') ?? 0;
if(!$is_pk){
$is_pk = db::name('vs_room_pk')->where(['room_id_b' => $room_id])->where(['status' => ['in',[2,3,4]]])->value('room_id_a') ?? 0;
}
if($is_pk > 0){
//如果此房间是pk中则推送给pk中房间的成员
$text['is_pk'] = 1;
model('Chat')->sendMsg(1004,$is_pk,$text);
}
} }
return ['code' => 1, 'msg' => '下麦成功', 'data' => null]; return ['code' => 1, 'msg' => '下麦成功', 'data' => null];
@@ -248,6 +270,10 @@ class RoomPit extends Model
//换麦使用 //换麦使用
if(isset($pit_infos) && $pit_infos['pit_number'] > 0){ if(isset($pit_infos) && $pit_infos['pit_number'] > 0){
//9号麦位不允许换
if($pit_infos['pit_number'] == 9){
return ['code' => 0, 'msg' => 'PK中 主持不允许换麦', 'data' => null];
}
$exchange1 = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_infos['pit_number']])->update([ 'user_id' => 0]); $exchange1 = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_infos['pit_number']])->update([ 'user_id' => 0]);
$exchange = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_number])->update([ 'user_id' => $user_id]); $exchange = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_number])->update([ 'user_id' => $user_id]);
if(!$exchange || !$exchange1){ if(!$exchange || !$exchange1){
@@ -270,6 +296,16 @@ class RoomPit extends Model
$text['from_pit_number'] = $pit_infos['pit_number']; $text['from_pit_number'] = $pit_infos['pit_number'];
$text['to_pit_number'] = $pit_number; $text['to_pit_number'] = $pit_number;
model('Chat')->sendMsg(1039,$room_id,$text); model('Chat')->sendMsg(1039,$room_id,$text);
//查看此房间是否处于pk中
$is_pk = db::name('vs_room_pk')->where(['room_id_a' => $room_id])->where(['status' => ['in',[2,3,4]]])->value('room_id_b') ?? 0;
if(!$is_pk){
$is_pk = db::name('vs_room_pk')->where(['room_id_b' => $room_id])->where(['status' => ['in',[2,3,4]]])->value('room_id_a') ?? 0;
}
if($is_pk > 0){
//如果此房间是pk中则推送给pk中房间的成员
$text['is_pk'] = 1;
model('Chat')->sendMsg(1039,$is_pk,$text);
}
return ['code' => 1, 'msg' => '上麦成功', 'data' => null]; return ['code' => 1, 'msg' => '上麦成功', 'data' => null];
}else{ }else{
$ompit = $this->OnPit($user_id,$room_id,$pit_number);//用户上了这个房间的几号麦位 $ompit = $this->OnPit($user_id,$room_id,$pit_number);//用户上了这个房间的几号麦位