This commit is contained in:
2025-11-12 19:07:19 +08:00
parent 8248363a83
commit 06508ca830
3 changed files with 69 additions and 0 deletions

View File

@@ -34,6 +34,9 @@ class SingerSong extends Model
{
//查询是否提交过认证
$res = db::name('vs_singer')->where(['user_id' => $user_id])->find();
if ($res && $res['status'] == 1) {
return ['code' => 0, 'msg' => '认证已通过,无需重复提交'];
}
if ($res) {
$data = [
'song' => $song,
@@ -118,4 +121,50 @@ class SingerSong extends Model
}
}
/*
* 点歌
* @param song_id 歌曲id
* @param user_id 用户id
*/
public function singerSong($user_id, $song_id, $room_id)
{
//查询歌曲信息
$song = db::name('vs_singer_song')->where(['id' => $song_id])->find();
if (!$song) {
return ['code' => 0, 'msg' => '歌曲不存在'];
}
//查询用户余额
$user_money = db::name('user_wallet')->where(['user_id' => $user_id])->value('coin');
$gift_price = db::name('vs_gift')->where(['gid' => $song['gift_id']])->value('gift_price');
if ($user_money < $gift_price * $song['gift_num']) {
return ['code' => 0, 'msg' => '余额不足'];
}
//走送礼流程
$res = model('GiveGift')->give_gift($user_id,$song['user_id'],$song['gift_id'],$song['gift_num'],2,1,$room_id);
if ($res['code'] == 1) {
$data = [
'user_id' => $user_id,
'room_id' => $room_id,
'singer_song_id' => $song_id,
'createtime' => time()
];
$result = db::name('vs_song_log')->insert($data);
if (!$result) {
return ['code' => 0, 'msg' => '点歌失败'];
}
//给前端推送
$text = [
'text' => '房间点歌变化'
];
//聊天室推送系统消息
model('Chat')->sendMsg(1070,$room_id,$text);
return ['code' => 1, 'msg' => '点歌成功'];
} else {
return ['code' => 0, 'msg' => $res['msg']];
}
}
}