礼物墙

This commit is contained in:
2026-01-22 15:12:08 +08:00
parent d636d64fe7
commit 46f644aacf
4 changed files with 74 additions and 15 deletions

View File

@@ -421,19 +421,47 @@ class GiveGift extends Model
//使用收礼用户 和礼物ID 查询礼物墙
$gift_wall = db::name('user_gift_wall')->where(['user_id'=>$to_id,'gift_id'=>$gid])->find();
if($gift_wall){
db::name('user_gift_wall')->where(['id'=>$gift_wall['id']])->inc('count',$num)->update();
$userIds = explode(',',$gift_wall['give_user_ids']);
if(!in_array($uid,$userIds)){
$userIds[] = $uid;
db::name('user_gift_wall')->where(['id'=>$gift_wall['id']])->update(['give_user_ids'=>implode(',',$userIds)]);
if($gift_wall){//更新
//往期送礼用户
$users = json_decode($gift_wall['give_user_ids'], true);
if($users){
$ture = false;
foreach ($users as $user_id){
if($user_id['user_id'] == $uid){
$user_id['count'] += $num;
$ture = true;
}
}
if(!$ture){
$users[] = [
'user_id' => $uid,
'count' => $num
];
}
$users_list = json_encode($users);
db::name('user_gift_wall')->where(['id'=>$gift_wall['id']])
->update(['give_user_ids'=>$users_list,'updatetime' => time(),'count' => $gift_wall['count'] + $num]);
}else{
$users[] = [
'user_id' => $uid,
'count' => $num
];
$users_list = json_encode($users);
db::name('user_gift_wall')->where(['id'=>$gift_wall['id']])
->update(['give_user_ids'=>$users_list,'updatetime' => time(),'count' => $num]);
}
}else{
}else{//新增
$users[] = [
'user_id' => $uid,
'count' => $num
];
$users_list = json_encode($users);
db::name('user_gift_wall')->insert([
'user_id' => $to_id,
'gift_id' => $gid,
'count' => $num,
'give_user_ids' => $uid,
'give_user_ids' => $users_list,
'updatetime' => time()
]);
}