Files
yusheng-php/application/api/controller/BarRoom.php
2026-01-07 18:17:03 +08:00

104 lines
3.2 KiB
PHP

<?php
namespace app\api\controller;
use app\common\controller\BaseCom;
use think\Cache;
use think\Db;
class BarRoom extends BaseCom
{
//麦位时长列表
public function get_pit_time_list(){
$reslut = model('BarRoom')->get_pit_duration_list();
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//房间麦位时长设置
public function set_pit_time(){
$room_id = input('room_id', 0);
$time = input('time', 0);
$user_id = $this->uid;
if (!$room_id || !$time) {
return V(0, '参数错误');
}
//判断用户是否是主持
$user_is_on_pit = db::name('vs_room_pit')->where(['room_id' => $room_id, 'user_id' => $user_id])->value('pit_number');
if($user_is_on_pit != 9){
return V(0, '没有权限');
}
$reslut = model('BarRoom')->set_pit_duration($room_id, $time);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//约Ta礼物详情
public function get_gift_info_ta(){
$room_id = input('room_id', 0);
$to_user_id =input('to_user_id', 0);
$reslut = model('BarRoom')->get_gift_info_ta($room_id, $to_user_id);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//撩TA
public function liao_ta(){
$room_id = input('room_id', 0);
$to_user_id =input('to_user_id', 0);
$user_id = $this->uid;
$type = input('type', 0);
if($type == 1){
if($user_id == $to_user_id){
return V(0, '不能撩自己');
}
$reslut = model('BarRoom')->liao_ta($room_id,$user_id,$to_user_id);
}else{
$reslut = model('BarRoom')->one_key_liao_ta($room_id,$user_id);
}
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//约TA
public function meeting_ta(){
$key_name = "api:meeting:ta:" . $this->uid;
redis_lock_exits($key_name);
$room_id = input('room_id', 0);
$user_id =input('user_id', 0);
$gift_id =input('gift_id', 0);
if(!$room_id || !$user_id || !$gift_id){
redis_unlocks($key_name);
return V(0, '参数错误');
}
//获取缓存
$meet_user_id = Cache::get('meeting_user_id_'.$user_id);
if($meet_user_id == $user_id){
redis_unlocks($key_name);
return V(0, '佳人有约!');
}
//设置缓存
Cache::set('meeting_user_id_'.$user_id, $user_id);
$reslut = model('BarRoom')->meeting_ta($this->uid,$room_id,$user_id,$gift_id);
if($reslut['code'] != 1){
//删除缓存
Cache::rm('meeting_user_id_'.$user_id);
}else{
//给缓存添加有效 期
Cache::set('meeting_user_id_'.$user_id, $user_id, 60);
}
redis_unlocks($key_name);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
//小黑屋列表
public function black_room_list(){
$room_id = input('room_id', 0);
$reslut = model('BarRoom')->black_room_list($room_id);
return V($reslut['code'], $reslut['msg'], $reslut['data']);
}
}