From 355311f96314c52b237815fd4f75b23efd6dd575 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Mon, 1 Sep 2025 17:03:40 +0800 Subject: [PATCH 1/9] =?UTF-8?q?=E6=8D=A2=E9=BA=A61039?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/Chat.php | 2 ++ application/api/model/RoomPit.php | 34 ++++++++++++++++++++++++------- 2 files changed, 29 insertions(+), 7 deletions(-) diff --git a/application/api/model/Chat.php b/application/api/model/Chat.php index a6750d6..995afd1 100644 --- a/application/api/model/Chat.php +++ b/application/api/model/Chat.php @@ -89,6 +89,8 @@ class Chat extends Model // RoomAuctionPK = 1037, //送盲盒礼物推送文字消息 // RoomGiftBlindBox = 1038, + //换麦 + // RoomChangePit = 1039, //交友房间内发送消息 //交友房游戏阶段 diff --git a/application/api/model/RoomPit.php b/application/api/model/RoomPit.php index bf215a7..090893c 100644 --- a/application/api/model/RoomPit.php +++ b/application/api/model/RoomPit.php @@ -188,9 +188,9 @@ class RoomPit extends Model //检查是否在坑位上 $pit_infos = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id])->field('id,pit_number')->find(); - if($pit_infos){ - return ['code' => 0, 'msg' => '您已上麦', 'data' => null]; - } +// if($pit_infos){ +// return ['code' => 0, 'msg' => '您已上麦', 'data' => null]; +// } if($room_info['label_id'] == 5 && $room_info['step'] != 1 && $pit_number < 9){ return ['code' => 0, 'msg' => '交友房 此阶段不可操作', 'data' => null]; @@ -235,11 +235,31 @@ class RoomPit extends Model } //换麦使用 if(isset($pit_infos) && $pit_infos['pit_number'] > 0){ - //下麦 - $dow = $this ->DownPit($user_id,$room_id,$pit_infos['pit_number']); - if($dow['code'] != 1){ - return ['code' => 0, 'msg' => '操作失败', 'data' => null]; +// //下麦 +// $dow = $this ->DownPit($user_id,$room_id,$pit_infos['pit_number']); +// if($dow['code'] != 1){ +// return ['code' => 0, 'msg' => '操作失败', 'data' => null]; +// } + $exchange = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id])->update(['pit_number' => $pit_number]); + if(!$exchange){ + return ['code' => 0, 'msg' => '换麦失败', 'data' => null]; } + $FromUserInfo = db::name('user')->where('id',$user_id)->field('id as user_id,nickname,avatar,sex')->find(); + $FromUserInfo['icon'][0] = model('UserData')->user_wealth_icon($user_id);//财富图标 + $FromUserInfo['icon'][1] = model('UserData')->user_charm_icon($user_id);//魅力图标 + $FromUserInfo['dress'] = model('Decorate')->user_decorate_detail($user_id,1); + $FromUserInfo['charm'] = db::name('vs_room_user_charm')->where(['user_id' => $user_id,'room_id' => $room_id])->value('charm'); + if($pit_number == 9){ + $pit_text = '主持麦'; + }elseif ($pit_number == 10) { + $pit_text = '嘉宾麦'; + }else{ + $pit_text = $pit_number . '号麦'; + } + $text['text'] = $FromUserInfo['nickname'].' 换到 ' . $pit_text; + $text['FromUserInfo'] = $FromUserInfo; + model('Chat')->sendMsg(1039,$room_id,$text); + return ['code' => 1, 'msg' => '上麦成功', 'data' => null]; } $ompit = $this->OnPit($user_id,$room_id,$pit_number);//用户上了这个房间的几号麦位 if($ompit['code'] != 1){ From ccff79476bdc98177ae22498573eec791e821d81 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Mon, 1 Sep 2025 21:10:25 +0800 Subject: [PATCH 2/9] =?UTF-8?q?=E6=8D=A2=E9=BA=A61039?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/RoomPit.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/application/api/model/RoomPit.php b/application/api/model/RoomPit.php index 090893c..3653b2c 100644 --- a/application/api/model/RoomPit.php +++ b/application/api/model/RoomPit.php @@ -240,7 +240,7 @@ class RoomPit extends Model // if($dow['code'] != 1){ // return ['code' => 0, 'msg' => '操作失败', 'data' => null]; // } - $exchange = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id])->update(['pit_number' => $pit_number]); + $exchange = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_number])->update([ 'user_id' => $user_id]); if(!$exchange){ return ['code' => 0, 'msg' => '换麦失败', 'data' => null]; } @@ -258,6 +258,7 @@ class RoomPit extends Model } $text['text'] = $FromUserInfo['nickname'].' 换到 ' . $pit_text; $text['FromUserInfo'] = $FromUserInfo; + $text['pit_number'] = $pit_number; model('Chat')->sendMsg(1039,$room_id,$text); return ['code' => 1, 'msg' => '上麦成功', 'data' => null]; } From d4d6d8114e39665eabbe838a23bdc14c2f4525da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Mon, 1 Sep 2025 22:50:47 +0800 Subject: [PATCH 3/9] =?UTF-8?q?=E6=8D=A2=E9=BA=A61039?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/RoomPit.php | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/application/api/model/RoomPit.php b/application/api/model/RoomPit.php index 3653b2c..5ed01e1 100644 --- a/application/api/model/RoomPit.php +++ b/application/api/model/RoomPit.php @@ -203,6 +203,11 @@ class RoomPit extends Model if($pit_number == 7 || $pit_number == 8){ return ['code' => 0, 'msg' => '该麦位已锁定了', 'data' => null]; } + if($pit_number == 9){ + if($pit_infos){ + return ['code' => 0, 'msg' => '您已上麦', 'data' => null]; + } + } } //查询当前麦位是否有人 $pit_info = db::name('vs_room_pit')->where(['room_id' => $room_id, 'pit_number' => $pit_number])->field('id,user_id,is_lock')->find(); From a8a205538903f191e915e6052eebba39131db6e3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Mon, 1 Sep 2025 23:07:07 +0800 Subject: [PATCH 4/9] =?UTF-8?q?=E6=8D=A2=E9=BA=A61039?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/RoomPit.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/application/api/model/RoomPit.php b/application/api/model/RoomPit.php index 5ed01e1..c3a9f35 100644 --- a/application/api/model/RoomPit.php +++ b/application/api/model/RoomPit.php @@ -263,7 +263,8 @@ class RoomPit extends Model } $text['text'] = $FromUserInfo['nickname'].' 换到 ' . $pit_text; $text['FromUserInfo'] = $FromUserInfo; - $text['pit_number'] = $pit_number; + $text['from_pit_number'] = $pit_infos['pit_number']; + $text['to_pit_number'] = $pit_number; model('Chat')->sendMsg(1039,$room_id,$text); return ['code' => 1, 'msg' => '上麦成功', 'data' => null]; } From 4af41b60f8d640cd1a95d25418cf684c9bb5a560 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Mon, 1 Sep 2025 23:21:43 +0800 Subject: [PATCH 5/9] =?UTF-8?q?=E4=BA=A4=E5=8F=8B=E6=88=BF=E6=97=A0?= =?UTF-8?q?=E5=85=B3=E7=B3=BB=E4=B8=8D=E5=88=9B=E5=BB=BA=E7=A7=81=E5=AF=86?= =?UTF-8?q?=E6=88=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/Friend.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/api/model/Friend.php b/application/api/model/Friend.php index b63c8c3..1a94c29 100644 --- a/application/api/model/Friend.php +++ b/application/api/model/Friend.php @@ -159,7 +159,7 @@ class Friend extends Model ->update(['status' => 3,'friend_config_id' =>$friending_config_id]); if ($originalPairs) { $relation = db::name('vs_relation')->where('id',$friending_config_id)->value('name'); - if($friending_heart['heart_value'] >= get_system_config_value('friend_heart_create_room')){ + if($friending_heart['heart_value'] >= get_system_config_value('friend_heart_create_room') && $friending_config_id > 0){ //创建小房间 $room_ids = model('api/Room')->user_create_room($user1,'的电影房',get_system_config_value('web_site').'/data/avatar/head_pic.png','交友房产生的一次性房间',7); if($room_ids['code'] != 1){ From 2420471f01674f3fef4af10a04288c3f9186605a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Mon, 1 Sep 2025 23:28:28 +0800 Subject: [PATCH 6/9] =?UTF-8?q?=E4=BA=A4=E5=8F=8B=E6=88=BF=E6=97=A0?= =?UTF-8?q?=E5=85=B3=E7=B3=BB=E4=B8=8D=E5=88=9B=E5=BB=BA=E7=A7=81=E5=AF=86?= =?UTF-8?q?=E6=88=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/RoomPit.php | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/application/api/model/RoomPit.php b/application/api/model/RoomPit.php index c3a9f35..39885b3 100644 --- a/application/api/model/RoomPit.php +++ b/application/api/model/RoomPit.php @@ -245,8 +245,9 @@ class RoomPit extends Model // if($dow['code'] != 1){ // return ['code' => 0, 'msg' => '操作失败', 'data' => null]; // } + $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]); - if(!$exchange){ + if(!$exchange || !$exchange1){ return ['code' => 0, 'msg' => '换麦失败', 'data' => null]; } $FromUserInfo = db::name('user')->where('id',$user_id)->field('id as user_id,nickname,avatar,sex')->find(); From 630aeac5e0594d3d977799899b1a71495b4e7720 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Tue, 2 Sep 2025 09:37:12 +0800 Subject: [PATCH 7/9] =?UTF-8?q?=E4=BA=A4=E5=8F=8B=E5=BC=80=E5=A7=8B=20?= =?UTF-8?q?=E6=8F=90=E7=A4=BA=E8=AF=AD=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/model/Friend.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/api/model/Friend.php b/application/api/model/Friend.php index 1a94c29..7cd981d 100644 --- a/application/api/model/Friend.php +++ b/application/api/model/Friend.php @@ -47,7 +47,7 @@ class Friend extends Model model('api/Chat')->sendMsg(1049,$room_id,$text); return ['code' => 1, 'msg' => '操作成功!', 'data' => ['friend_id' => $id]]; }else{ - return ['code' => 0, 'msg' => '不具备开始条件!', 'data' => null]; + return ['code' => 0, 'msg' => '交友麦位至少两位用户才能开始', 'data' => null]; } } From 15a6c30a14a1358cf88f982faa653e419c115ea5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Tue, 2 Sep 2025 10:50:57 +0800 Subject: [PATCH 8/9] =?UTF-8?q?=E4=BA=A4=E5=8F=8B=E7=BB=93=E6=9D=9F=20?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/api/controller/Cron.php | 6 ++ application/cron/controller/FriendEnd.php | 56 +++++++++++++++++++ .../cron/controller/PerformPerSecond.php | 36 +----------- 3 files changed, 65 insertions(+), 33 deletions(-) create mode 100644 application/cron/controller/FriendEnd.php diff --git a/application/api/controller/Cron.php b/application/api/controller/Cron.php index 147b7b9..0e9fa4b 100644 --- a/application/api/controller/Cron.php +++ b/application/api/controller/Cron.php @@ -37,4 +37,10 @@ class Cron $cron = new \app\cron\controller\RoomPan(); $cron->index(); } + + //交友房结束 + public function FriendEnd(){ + $cron = new \app\cron\controller\FriendEnd(); + $cron->index(); + } } \ No newline at end of file diff --git a/application/cron/controller/FriendEnd.php b/application/cron/controller/FriendEnd.php new file mode 100644 index 0000000..0e7b3c0 --- /dev/null +++ b/application/cron/controller/FriendEnd.php @@ -0,0 +1,56 @@ +clearFriendingEndRoom();//清除交友房过期未结束数据 + echo "清除结束 \n"; + + echo "清除私密小屋过期数据开始:\n"; + $this->clear_room_end();//清除私密小屋过期数据 + echo "清除私密小屋过期数据结束 \n"; + } + + + //清除交友房过期未结束数据 + public function clearFriendingEndRoom() + { + //清除交友房过期数据 + $room_list = db::name('vs_room')->where(['type_id'=>7])->whereIn('step', [2,3]) + ->field(['id','room_name','room_cover','step'])->select(); + if(!empty($room_list)){ + foreach ($room_list as $room) { + //查询交友信息 + $friending_info = db::name('vs_user_friending')->where('room_id', $room['id'])->where('status', 1)->order('id', 'desc')->find(); + if($friending_info){ + //判断结束时间是否到期 + if($friending_info['end_time'] <= time()){ + model('Friend')->end_friend(0,$room['id'],$friending_info['id'],1); + } + } + } + } + + } + + + //清除私密小屋过期数据 + public function clear_room_end() + { + $room_list = db::name('vs_room_cp_movie')->where(['type'=>1,'time_day' =>['<',time()]])->select(); + if(!empty($room_list)){ + foreach ($room_list as $room) { + model('Friend')->outRoom(0,$room['room_id']); + } + } + } +} \ No newline at end of file diff --git a/application/cron/controller/PerformPerSecond.php b/application/cron/controller/PerformPerSecond.php index e1d43d7..fb3b663 100644 --- a/application/cron/controller/PerformPerSecond.php +++ b/application/cron/controller/PerformPerSecond.php @@ -33,9 +33,9 @@ class PerformPerSecond // echo "提现云账号订单状态查询:\n"; // $this->withdraw_order_status(); // echo "\n"; - echo "清除交友房过期未结束数据:\n"; - $this->clearFriendingEndRoom(); - echo "\n"; +// echo "清除交友房过期未结束数据:\n"; +// $this->clearFriendingEndRoom(); +// echo "\n"; } @@ -166,34 +166,4 @@ class PerformPerSecond } } - - - //清除交友房过期未结束数据 - public function clearFriendingEndRoom() - { - //清除交友房过期数据 - $room_list = db::name('vs_room')->where(['type_id'=>7])->whereIn('step', [2,3]) - ->field(['id','room_name','room_cover','step'])->select(); - if(!empty($room_list)){ - foreach ($room_list as $room) { - //查询交友信息 - $friending_info = db::name('vs_user_friending')->where('room_id', $room['id'])->where('status', 1)->order('id', 'desc')->find(); - if($friending_info){ - //判断结束时间是否到期 - if($friending_info['end_time'] <= time()){ - model('Friend')->end_friend(0,$room['id'],$friending_info['id'],1); - } - } - } - } - //清除私密小屋过期数据 - $room_list = db::name('vs_room_cp_movie')->where(['type'=>1,'time_day' =>['<',time()]])->select(); - if(!empty($room_list)){ - foreach ($room_list as $room) { - model('Friend')->outRoom(0,$room['room_id']); - } - } - } - - } \ No newline at end of file From 6a140a01a26b771f472da93c50de3498287c5bcf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=88=98=E5=8D=8E=E6=B8=85?= <18691022700@163.com> Date: Tue, 2 Sep 2025 11:17:28 +0800 Subject: [PATCH 9/9] =?UTF-8?q?=E4=BA=A4=E5=8F=8B=E7=BB=93=E6=9D=9F=20?= =?UTF-8?q?=E8=AE=A1=E5=88=92=E4=BB=BB=E5=8A=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- application/cron/controller/FriendEnd.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/application/cron/controller/FriendEnd.php b/application/cron/controller/FriendEnd.php index 0e7b3c0..1c87d14 100644 --- a/application/cron/controller/FriendEnd.php +++ b/application/cron/controller/FriendEnd.php @@ -46,7 +46,7 @@ class FriendEnd //清除私密小屋过期数据 public function clear_room_end() { - $room_list = db::name('vs_room_cp_movie')->where(['type'=>1,'time_day' =>['<',time()]])->select(); + $room_list = db::name('vs_room_cp_movie')->where(['status' => 1,'type'=>1,'time_day' =>['<',time()]])->select(); if(!empty($room_list)){ foreach ($room_list as $room) { model('Friend')->outRoom(0,$room['room_id']);