酒吧房相关
This commit is contained in:
@@ -91,6 +91,10 @@ class RoomPit extends Model
|
||||
$pit_text = $pit_number . '号麦';
|
||||
}
|
||||
}
|
||||
if($roomtype == 11){
|
||||
$pit_time = db::name('vs_room_bar')->where('id',$room_id)->value('pit_time') ?? 5;
|
||||
$text['end_time'] = time()+$pit_time * 60;
|
||||
}
|
||||
|
||||
$text['text'] = $FromUserInfo['nickname'].' 上了 ' . $pit_text;
|
||||
$text['FromUserInfo'] = $FromUserInfo;
|
||||
@@ -142,7 +146,7 @@ class RoomPit extends Model
|
||||
}
|
||||
|
||||
//用户下麦
|
||||
public function DownPit($user_id,$room_id,$pit_number,$type = 0)
|
||||
public function DownPit($user_id,$room_id,$pit_number = 0,$type = 0)
|
||||
{
|
||||
$roomtype = db::name('vs_room')->where(['id' => $room_id])->value('type_id');
|
||||
|
||||
@@ -166,6 +170,7 @@ class RoomPit extends Model
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if($roomtype == 10){
|
||||
if($pit_number == 1){
|
||||
$pit_text = '签约麦';
|
||||
@@ -272,9 +277,6 @@ class RoomPit extends Model
|
||||
//申请上麦
|
||||
public function apply_pit($user_id,$room_id,$pit_number = 0)
|
||||
{
|
||||
if($room_id <= 0){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
//查询房间状态
|
||||
$room_info = db::name('vs_room')->where(['id' => $room_id, 'apply_status' => 2])->field('id,room_status,room_up_pit_type,type_id,label_id,step')->find();
|
||||
if(!$room_info){
|
||||
@@ -333,7 +335,7 @@ class RoomPit extends Model
|
||||
//自由麦
|
||||
if($room_info['room_up_pit_type'] == 2){
|
||||
if($pit_number > 0){
|
||||
if($room_info['label_id'] == 5){//交友(互娱)
|
||||
if($room_info['label_id'] == 5 || $room_info['label_id'] == 8){//互娱||酒吧
|
||||
if($pit_number == 7 || $pit_number == 8){
|
||||
return ['code' => 0, 'msg' => '该麦位已锁定了', 'data' => null];
|
||||
}
|
||||
@@ -353,7 +355,7 @@ class RoomPit extends Model
|
||||
return ['code' => 0, 'msg' => '该麦位被锁定', 'data' => null];
|
||||
}
|
||||
}else{
|
||||
if($room_info['label_id'] == 5){//交友
|
||||
if($room_info['label_id'] == 5 || $room_info['label_id'] == 8){//互娱||酒吧
|
||||
$pit_number = $this->getRoomNullPitWithout($room_id, [7,8,9,10]);
|
||||
}else{
|
||||
$pit_number = $this->getRoomNullPitWithout($room_id, [9, 10]);
|
||||
@@ -483,22 +485,83 @@ class RoomPit extends Model
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public function apply_pit_bar($user_id,$room_id,$gift_id,$pit_number = 0)
|
||||
{
|
||||
//查询房间状态
|
||||
$room_info = db::name('vs_room')->where(['id' => $room_id, 'apply_status' => 2])->field('id,room_status,room_up_pit_type,type_id,label_id,step')->find();
|
||||
if(!$room_info){
|
||||
return ['code' => 0, 'msg' => '房间不存在', 'data' => null];
|
||||
}
|
||||
if($room_info['room_status'] != 1){
|
||||
return ['code' => 0, 'msg' => '房间违规或关闭', 'data' => null];
|
||||
}
|
||||
|
||||
//检查是否在坑位上
|
||||
$pit_infos = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id])->field('id,pit_number')->find();
|
||||
if($pit_number == 9){
|
||||
//检查用户是否是房主或主持
|
||||
$is_room_owner =db::name('vs_room')->where(['id' => $room_id, 'user_id' => $user_id])->field('id')->find();
|
||||
$is_room_host = db::name('vs_room_host')->where(['room_id' => $room_id, 'user_id' => $user_id,'delete_time' => null])->field('id')->find();
|
||||
if(!$is_room_owner && !$is_room_host){
|
||||
return ['code' => 0, 'msg' => '没有权限', 'data' => null];
|
||||
}
|
||||
if($pit_infos){
|
||||
return ['code' => 0, 'msg' => '您已在麦上', 'data' => null];
|
||||
}
|
||||
}
|
||||
|
||||
if($pit_number == 10){
|
||||
return ['code' => 0, 'msg' => '请等待主持抱麦', 'data' => null];
|
||||
}
|
||||
|
||||
if($pit_number){
|
||||
//查询麦位是否有用户
|
||||
$pit_info = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_number])->field('id,user_id')->find();
|
||||
if($pit_info){
|
||||
if($pit_info['user_id']){
|
||||
return ['code' => 0, 'msg' => '麦位有人', 'data' => null];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
//查询当前空麦位
|
||||
$empty_pit = $this->getRoomNullPitWithout($room_id, [7,8,9,10]);
|
||||
if (!$empty_pit) {
|
||||
return ['code' => 0, 'msg' => '没有空麦位', 'data' => null];
|
||||
}
|
||||
}
|
||||
|
||||
//上麦成功后设置礼物
|
||||
$gift_info = model('api/BarRoom')->join_pit_choose_gift($user_id,$room_id,$gift_id);
|
||||
if($gift_info['code'] != 1){
|
||||
return ['code' => 0, 'msg' => '设置礼物失败', 'data' => null];
|
||||
}
|
||||
|
||||
$ompit = $this->OnPit($user_id,$room_id,$pit_number);//用户上了这个房间的几号麦位
|
||||
if($ompit['code'] != 1){
|
||||
return ['code' => 0, 'msg' => '上麦失败', 'data' => null];
|
||||
}
|
||||
|
||||
return ['code' => 1, 'msg' => '上麦成功', 'data' => null];
|
||||
}
|
||||
|
||||
|
||||
|
||||
//申请上麦列表
|
||||
public function apply_pit_list($userId,$room_id)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
|
||||
$where = [
|
||||
'a.room_id' => $room_id,
|
||||
'a.status' => 0,
|
||||
];
|
||||
|
||||
//常规通道 type: 0普通通道,1优先通道
|
||||
$list['regular'] = db::name('vs_room_pit_apply')->alias('a')->join('user b','a.user_id = b.id')
|
||||
->where($where)->where('a.type',0)->field('a.user_id,a.rank_value,b.nickname,b.avatar')
|
||||
->order('a.rank_value desc')->select();
|
||||
$list['regular'] = db::name('vs_room_pit_apply')->alias('a')
|
||||
->join('user b','a.user_id = b.id')
|
||||
->where($where)->where('a.type',0)
|
||||
->field('a.user_id,a.rank_value,b.nickname,b.avatar')
|
||||
->order('a.rank_value desc')
|
||||
->select();
|
||||
foreach ($list['regular'] as $k => $v){
|
||||
//查询用户的爵位
|
||||
$jue_wei = model('Nobility')->getUserNobilityInfo($v['user_id']);
|
||||
@@ -554,12 +617,6 @@ class RoomPit extends Model
|
||||
//上麦助力
|
||||
public function help_apply_pit($user_id,$room_id,$apply_id)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
if(!$apply_id){
|
||||
return ['code' => 0, 'msg' => '请选择助力用户', 'data' => null];
|
||||
}
|
||||
|
||||
//查询当前房间设置的助力;礼物
|
||||
$gift_info = db::name('vs_room_pit_apply_help_gift')->where(['room_id' => $room_id])->field('id,gift_id,gift_price')->find();
|
||||
@@ -567,24 +624,15 @@ class RoomPit extends Model
|
||||
return ['code' => 0, 'msg' => '当前房间没有设置助力礼物', 'data' => null];
|
||||
}
|
||||
|
||||
// $res = model('Room')->get_room_label($room_id);
|
||||
// $room_label = $res['data']['label_id'];
|
||||
// $room_type = $res['data']['type_id'];
|
||||
// if($room_label == 1 && ($room_type == 1 || $room_type == 3 || $room_type == 4)){
|
||||
// $apply_type = 1;
|
||||
// }elseif ($room_label == 2 && ($room_type == 1 || $room_type == 3 || $room_type == 4)){
|
||||
// $apply_type = 2;
|
||||
// }
|
||||
|
||||
//助力
|
||||
$data = [
|
||||
'user_id' => $user_id,
|
||||
'help_user_id' => $apply_id,
|
||||
'room_id' => $room_id,
|
||||
'rank_value' => $gift_info['gift_price'],
|
||||
// 'apply_type' => $apply_type,
|
||||
'createtime'=> time(),
|
||||
];
|
||||
|
||||
//开启事务
|
||||
db::startTrans();
|
||||
$reslut = db::name('vs_room_pit_apply_help')->insert($data);
|
||||
@@ -628,12 +676,6 @@ class RoomPit extends Model
|
||||
//同意上麦
|
||||
public function agree_pit($user_id,$room_id,$apply_id,$tpe = 0)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
if(!$apply_id){
|
||||
return ['code' => 0, 'msg' => '请选择申请用户', 'data' => null];
|
||||
}
|
||||
|
||||
$res = model('Room')->get_room_label($room_id);
|
||||
$room_label = $res['data']['label_id'];
|
||||
@@ -644,29 +686,14 @@ class RoomPit extends Model
|
||||
$apply_type = 2;//K歌
|
||||
}elseif($room_type == 2){
|
||||
$apply_type = 3;//拍卖
|
||||
}elseif($room_type == 7){
|
||||
$apply_type = 7;//交友
|
||||
}elseif($room_type == 7 || $room_type == 11){//互娱和酒吧
|
||||
$apply_type = 7;
|
||||
}elseif($room_type == 10){
|
||||
$apply_type = 10;//签约
|
||||
}else{
|
||||
$apply_type = 1;//聊天
|
||||
}
|
||||
|
||||
// if($apply_type == 1){
|
||||
// //判断当前用户是否是房主或在主持麦位上的主持
|
||||
// $is_room_owner = model('Room')->where(['id' => $room_id, 'user_id' => $user_id])->field('id')->find();
|
||||
// $is_room_host = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id,'pit_number' => 9])->field('id')->find();
|
||||
// if(!$is_room_owner && !$is_room_host){
|
||||
// return ['code' => 0, 'msg' => '您不是房主 或 不在主持位,没有权限操作', 'data' => null];
|
||||
// }
|
||||
// }else{
|
||||
// $is_room_host = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id,'pit_number' => 9])->field('id')->find();
|
||||
// if(!$is_room_host){
|
||||
// return ['code' => 0, 'msg' => '您不在主持位,没有权限操作', 'data' => null];
|
||||
// }
|
||||
// }
|
||||
|
||||
|
||||
$to_user = explode(',',$apply_id);
|
||||
|
||||
if(count($to_user) >= 1){
|
||||
@@ -885,25 +912,12 @@ class RoomPit extends Model
|
||||
//清空上麦申请
|
||||
public function clear_apply_pit_list($userId,$room_id,$apply_id = 0)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
//判断当前用户是否是房主或主持
|
||||
$is_room_owner = model('Room')->where(['id' => $room_id, 'user_id' => $userId])->field('id')->find();
|
||||
$is_room_host = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $userId,'pit_number' => 9])->field('id')->find();
|
||||
if(!$is_room_owner && !$is_room_host){
|
||||
return ['code' => 0, 'msg' => '您不是房主 或 不在主持麦,没有权限操作', 'data' => null];
|
||||
}
|
||||
// $res = model('Room')->get_room_label($room_id);
|
||||
// $room_label = $res['data']['label_id'];
|
||||
// $room_type = $res['data']['type_id'];
|
||||
// if($room_label == 1 && ($room_type == 1 || $room_type == 3 || $room_type == 4)){
|
||||
// $apply_type = 1;
|
||||
// }elseif ($room_label == 2 && ($room_type == 1 || $room_type == 3 || $room_type == 4)){
|
||||
// $apply_type = 2;
|
||||
// }else{
|
||||
// $apply_type = 1;
|
||||
// }
|
||||
|
||||
if($apply_id){
|
||||
$to_user = explode(',',$apply_id);
|
||||
@@ -937,12 +951,6 @@ class RoomPit extends Model
|
||||
//设置插麦礼物
|
||||
public function set_room_pit_apply_help_gift($user_id,$room_id,$gift_id,$gift_price)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
if(!$gift_id){
|
||||
return ['code' => 0, 'msg' => '请选择礼物', 'data' => null];
|
||||
}
|
||||
//礼物不能是CP礼物
|
||||
$cp_gift_ids = explode(',', get_system_config_value('cp_gift_id'));
|
||||
if (in_array($gift_id, $cp_gift_ids)) {
|
||||
@@ -990,10 +998,6 @@ class RoomPit extends Model
|
||||
//修改房间上麦模式
|
||||
public function change_room_up_pit_type($user_id,$room_id)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
|
||||
//判断当前用户是否有权限
|
||||
$owner = db::name('vs_room')->where(['id' => $room_id, 'user_id' => $user_id])->field('id')->find();
|
||||
$host = db::name('vs_room_host')->where(['room_id' => $room_id, 'user_id' => $user_id,'delete_time' => null])->find();
|
||||
@@ -1031,15 +1035,6 @@ class RoomPit extends Model
|
||||
//1-抱麦 2-踢下去
|
||||
public function host_user_pit($user_id,$room_id,$pit_number,$accept_user_id,$type)
|
||||
{
|
||||
if(!$room_id){
|
||||
return ['code' => 0, 'msg' => '请选择房间', 'data' => null];
|
||||
}
|
||||
|
||||
if(!$accept_user_id){
|
||||
return ['code' => 0, 'msg' => '请选择用户', 'data' => null];
|
||||
}
|
||||
|
||||
|
||||
$room_type = db::name('vs_room')->where(['id' => $room_id])->value('type_id');
|
||||
if($type == 1){//抱麦
|
||||
//判断该用户是否在主持麦上
|
||||
@@ -1051,8 +1046,10 @@ class RoomPit extends Model
|
||||
if($accept_user_is_on_pit){
|
||||
return ['code' => 0, 'msg' => '该用户已在麦位上', 'data' => null];
|
||||
}
|
||||
if($room_type == 7 && ($pit_number == 7 || $pit_number == 8)){
|
||||
return ['code' => 0, 'msg' => '互娱房 不能上7、8号麦位', 'data' => null];
|
||||
if($room_type == 7 || $room_type == 11){
|
||||
if($pit_number == 7 || $pit_number == 8){
|
||||
return ['code' => 0, 'msg' => '此类型房间 不能上7、8号麦位', 'data' => null];
|
||||
}
|
||||
}
|
||||
$room_label = db::name('vs_room')->where(['id' => $room_id])->value('label_id');
|
||||
if($room_type == 1 && $room_label == 2 && !$pit_number){
|
||||
@@ -1184,11 +1181,11 @@ class RoomPit extends Model
|
||||
return ['code' => 1, 'msg' => '操作成功', 'data' => null];
|
||||
}
|
||||
}
|
||||
if($room_type == 7){
|
||||
if($room_type == 7 || $room_type == 11){
|
||||
//查询当前空麦位
|
||||
$empty_pit = $this->getRoomNullPitWithout($room_id, [7,8,9, 10]);
|
||||
$empty_pit = $this->getRoomNullPitWithout($room_id, [7,8,9,10]);
|
||||
}else{
|
||||
$empty_pit = $this->getRoomNullPitWithout($room_id, [9, 10]);
|
||||
$empty_pit = $this->getRoomNullPitWithout($room_id, [9,10]);
|
||||
}
|
||||
|
||||
if(!$empty_pit){
|
||||
|
||||
Reference in New Issue
Block a user