签约房 上麦 抱麦 收礼涨身价
This commit is contained in:
@@ -266,7 +266,7 @@ class Room extends BaseCom
|
||||
public function change_room_type()
|
||||
{
|
||||
$room_id = input('room_id', 0);
|
||||
$type = input('type', 1);//1-交友,2-拍卖,7-互娱,8-交友(不要了),9-点唱
|
||||
$type = input('type', 1);//1-交友,2-拍卖,7-互娱,8-交友(不要了),9-点唱,10-签约
|
||||
$reslut = model('Room')->change_room_type($this->uid, $room_id, $type);
|
||||
return V($reslut['code'], $reslut['msg'], $reslut['data']);
|
||||
}
|
||||
|
||||
@@ -196,7 +196,11 @@ class GiveGift extends Model
|
||||
return ['code' => 0, 'msg' => '收礼人收益配置有误', 'data' => null];
|
||||
}
|
||||
//收礼人认证歌手等级升级
|
||||
model('SingerSong')->singerLevelUp($to_id,$gift_price);
|
||||
model('api/SingerSong')->singerLevelUp($to_id,$gift_price);
|
||||
//收礼人身价计算
|
||||
$coin_market_values = explode(',', get_system_config_value('coin_market_value'));
|
||||
$change_value = ceil($gift_price / ($coin_market_values[0] ?? 100) * ($coin_market_values[1] ?? 1));
|
||||
model('api/MarketValue')->change($to_id,$change_value,0);
|
||||
|
||||
//1聊天送礼物 2房间语聊送礼 3直播送礼 4动态打赏 5系统任务 6-cp房间送礼
|
||||
if($from_type == 1 || $from_type == 2 || $from_type == 3 ||$from_type == 4 || $from_type == 6){
|
||||
|
||||
@@ -1818,7 +1818,7 @@ class Room extends Model
|
||||
|
||||
|
||||
//修改房间类型
|
||||
// $type //1-交友,2-拍卖,7-互娱,8-交友(不要了),9-点唱
|
||||
// $type 1-交友,2-拍卖,7-互娱,8-交友(不要了),9-点唱,10-签约
|
||||
public function change_room_type($uid,$room_id,$type)
|
||||
{
|
||||
if(!$uid || !$room_id || !$type){
|
||||
@@ -1846,10 +1846,14 @@ class Room extends Model
|
||||
}
|
||||
}
|
||||
|
||||
if($roomInfo['type_id'] == 10 && $roomInfo['sign_type'] != 0){
|
||||
return ['code' => 0, 'msg' => '请先结束签约后在修改房间类型', 'data' => null];
|
||||
}
|
||||
|
||||
//开启事务
|
||||
db::startTrans();
|
||||
$data = [];
|
||||
if($type == 1 || $type == 3 || $type == 4 || $type == 8 || $type == 9){
|
||||
if($type == 1 || $type == 3 || $type == 4 || $type == 8 || $type == 9 || $type == 10){
|
||||
$data = [
|
||||
'label_id' => 1,
|
||||
'type_id' => $type,
|
||||
@@ -1894,12 +1898,19 @@ class Room extends Model
|
||||
model('RoomPit')->DownPit($v['user_id'], $room_id,$v['pit_number']);
|
||||
}
|
||||
}
|
||||
// db::name('vs_room_pit')->where(['room_id' => $room_id])->update(['user_id' => 0]);
|
||||
//转到type= 10 签约房 嘉宾麦有人也下麦
|
||||
if($type == 10){
|
||||
$jiabin = db::name('vs_room_pit')->where(['room_id' => $room_id,'pit_number' => 10])->value('user_id');
|
||||
if($jiabin){
|
||||
model('RoomPit')->DownPit($jiabin, $room_id,10);
|
||||
}
|
||||
}
|
||||
|
||||
db::name('vs_room_pit_simulate')->where(['room_id' => $room_id])->delete();
|
||||
//申请上麦的全部下麦
|
||||
model('RoomPit')->clear_apply_pit_list($uid, $room_id);
|
||||
|
||||
if($type == 1 || $type == 3 || $type == 4 || $type == 7 || $type == 8 || $type == 9){
|
||||
if($type == 1 || $type == 3 || $type == 4 || $type == 7 || $type == 8 || $type == 9 || $type == 10){
|
||||
//查询拍卖房的状态
|
||||
$room_auction = db::name('vs_room_auction')->where(['room_id' => $room_id,'status' => 2])->select();
|
||||
if($room_auction){
|
||||
|
||||
@@ -566,6 +566,8 @@ class RoomPit extends Model
|
||||
$apply_type = 3;//拍卖
|
||||
}elseif($room_type == 7){
|
||||
$apply_type = 7;//交友
|
||||
}elseif($room_type == 10){
|
||||
$apply_type = 10;//签约
|
||||
}else{
|
||||
$apply_type = 1;//聊天
|
||||
}
|
||||
@@ -752,6 +754,45 @@ class RoomPit extends Model
|
||||
];
|
||||
model('Chat')->sendMsg(1034,$room_id,$text);
|
||||
return ['code' => 1, 'msg' => $i . '位用户上麦成功', 'data' => null];
|
||||
}elseif($apply_type == 10){
|
||||
//(签约房:1号麦位是 被签约者【徒弟麦】,2号麦位是【师傅麦位】3、4、5是老板麦位,9号是主持位)
|
||||
$uid = $to_user[0];
|
||||
//查询是否已经上麦
|
||||
$on_pit_number = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $uid])->value('pit_number');
|
||||
if ($on_pit_number == 1) {
|
||||
return ['code' => 0, 'msg' => '用户已在麦上', 'data' => null];
|
||||
}
|
||||
//查询1号麦位是否有人
|
||||
$is_one_pit = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => 1])->value('user_id');
|
||||
if ($is_one_pit) {
|
||||
return ['code' => 0, 'msg' => '麦位上有人', 'data' => null];
|
||||
}
|
||||
//制造上麦信息
|
||||
$FromUserInfo = db::name('user')->where('id',$uid)->field('id as user_id,nickname,avatar,sex')->find();
|
||||
$FromUserInfo['icon'][0] = model('UserData')->user_wealth_icon($uid);//财富图标
|
||||
$FromUserInfo['icon'][1] = model('UserData')->user_charm_icon($uid);//魅力图标
|
||||
$FromUserInfo['dress'] = model('Decorate')->user_decorate_detail($uid,1);
|
||||
$FromUserInfo['charm'] = db::name('vs_room_user_charm')->where(['user_id' => $uid,'room_id' => $room_id])->value('charm');
|
||||
$Nobility = model('api/Nobility')->getUserNobilityInfo($uid);
|
||||
$FromUserInfo['mic_cycle'] = model('api/Decorate')->user_decorate_detail($uid,3);
|
||||
$FromUserInfo['nobility_image'] = $Nobility['play_image'];
|
||||
$FromUserInfo['nickname_color'] = $Nobility['nick_name_color'];
|
||||
//推送告诉前端上了几号麦位
|
||||
$text['text'] = $FromUserInfo['nickname'].' 上了签约麦位';
|
||||
$text['FromUserInfo'] = $FromUserInfo;
|
||||
$text['pit_number'] = 1;
|
||||
//聊天室推送系统消息
|
||||
model('Chat')->sendMsg(1003,$room_id,$text);
|
||||
|
||||
//删除他的申请上麦
|
||||
db::name('vs_room_pit_apply')->where(['user_id' => $uid, 'room_id' => $room_id, 'status' => 0])->delete();
|
||||
$count = db::name('vs_room_pit_apply')->where(['room_id' => $room_id,'status' => 0])->count();
|
||||
//申请上麦推送消息
|
||||
$text = [
|
||||
'text' => '申请上麦',
|
||||
'count' => $count
|
||||
];
|
||||
model('Chat')->sendMsg(1034,$room_id,$text);
|
||||
}
|
||||
}
|
||||
return ['code' => 0, 'msg' => '请选择申请上麦的用户', 'data' => null];
|
||||
@@ -881,8 +922,8 @@ class RoomPit extends Model
|
||||
if($pit_type == 1){
|
||||
//房间模式
|
||||
$room_type = db::name('vs_room')->where(['id' => $room_id])->value('type_id');
|
||||
if($room_type == 2){
|
||||
return ['code' => 0, 'msg' => '房间模式下,不允许切换麦位模式', 'data' => null];
|
||||
if($room_type == 2 || $room_type == 10){
|
||||
return ['code' => 0, 'msg' => '该房间模式下,不允许切换上麦模式', 'data' => null];
|
||||
}
|
||||
$type = 2;
|
||||
}else{
|
||||
@@ -915,6 +956,40 @@ class RoomPit extends Model
|
||||
}
|
||||
|
||||
if($type == 1){//抱麦
|
||||
$room_type = db::name('vs_room')->where(['id' => $room_id])->value('type_id');
|
||||
if($room_type == 10){
|
||||
//$pit_number 只能是1、3、4、5
|
||||
if(!in_array($pit_number, [1,3,4,5])){
|
||||
return ['code' => 0, 'msg' => '签约房抱麦位只能是1、3、4、5', 'data' => null];
|
||||
}
|
||||
//麦位上否有人
|
||||
$on_pit = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_number])->value('user_id');
|
||||
if($on_pit){
|
||||
return ['code' => 0, 'msg' => '麦位有人', 'data' => null];
|
||||
}
|
||||
//制造上麦信息
|
||||
$FromUserInfo = db::name('user')->where('id',$accept_user_id)->field('id as user_id,nickname,avatar,sex,market_value')->find();
|
||||
$FromUserInfo['icon'][0] = model('UserData')->user_wealth_icon($accept_user_id);//财富图标
|
||||
$FromUserInfo['icon'][1] = model('UserData')->user_charm_icon($accept_user_id);//魅力图标
|
||||
$FromUserInfo['dress'] = model('Decorate')->user_decorate_detail($accept_user_id,1);
|
||||
$FromUserInfo['charm'] = db::name('vs_room_user_charm')->where(['user_id' => $accept_user_id,'room_id' => $room_id])->value('charm');
|
||||
$Nobility = model('api/Nobility')->getUserNobilityInfo($accept_user_id);
|
||||
$FromUserInfo['mic_cycle'] = model('api/Decorate')->user_decorate_detail($accept_user_id,3);
|
||||
$FromUserInfo['nobility_image'] = $Nobility['play_image'];
|
||||
$FromUserInfo['nickname_color'] = $Nobility['nick_name_color'];
|
||||
//推送告诉前端上了几号麦位
|
||||
if($pit_number == 1){
|
||||
$pit_text = '签约麦';
|
||||
}else{
|
||||
$pit_text = '老板麦';
|
||||
}
|
||||
$text['text'] = $FromUserInfo['nickname'].' 上了 ' . $pit_text;
|
||||
$text['FromUserInfo'] = $FromUserInfo;
|
||||
$text['pit_number'] = $pit_number;
|
||||
//聊天室推送系统消息
|
||||
model('Chat')->sendMsg(1003,$room_id,$text);
|
||||
return ['code' => 1, 'msg' => '操作成功', 'data' => null];
|
||||
}
|
||||
if($pit_number == 10){
|
||||
$on_9_pit = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => 9])->value('user_id');
|
||||
if($on_9_pit != $user_id){
|
||||
|
||||
Reference in New Issue
Block a user