巡乐会抽奖接口提交.-bug修改
This commit is contained in:
@@ -83,7 +83,9 @@ class BlindBoxTurntableGift extends Model
|
|||||||
$room = db::name('vs_room')->field('id,xlh_periods,xlh_periods_num,is_open_blind_box_turntable,blind_box_turntable_periods')->where(['id'=>$room_id])->find();
|
$room = db::name('vs_room')->field('id,xlh_periods,xlh_periods_num,is_open_blind_box_turntable,blind_box_turntable_periods')->where(['id'=>$room_id])->find();
|
||||||
//判断是否有足够的金币
|
//判断是否有足够的金币
|
||||||
$user_waller = db::name('user_wallet')->where(['user_id'=>$user_id])->find();
|
$user_waller = db::name('user_wallet')->where(['user_id'=>$user_id])->find();
|
||||||
if ($user_waller['coin'] < $bag_gift['gift_price'] * $num) {
|
//抽奖总消耗金币
|
||||||
|
$bag_gift_price = $bag_gift['gift_price'] * $num;
|
||||||
|
if ($user_waller['coin'] < $bag_gift_price) {
|
||||||
return ['code' => 0, 'msg' => '用户金币不足', 'data' => null];
|
return ['code' => 0, 'msg' => '用户金币不足', 'data' => null];
|
||||||
}
|
}
|
||||||
if ($room['is_open_blind_box_turntable'] != 1) {
|
if ($room['is_open_blind_box_turntable'] != 1) {
|
||||||
@@ -105,6 +107,10 @@ class BlindBoxTurntableGift extends Model
|
|||||||
return ['code' => 0, 'msg' => '添加盲盒转盘记录失败', 'data' => null];
|
return ['code' => 0, 'msg' => '添加盲盒转盘记录失败', 'data' => null];
|
||||||
}
|
}
|
||||||
foreach ($toarray as $gift_user_id){
|
foreach ($toarray as $gift_user_id){
|
||||||
|
if($user_id == $gift_user_id){
|
||||||
|
db::rollback();
|
||||||
|
return ['code' => 0, 'msg' => "收礼人不能包含自己", 'data' => null];
|
||||||
|
}
|
||||||
for($i = 0; $i < $num; $i++){
|
for($i = 0; $i < $num; $i++){
|
||||||
$reslut_draw_gift_data = $this->draw_gift_one($gift_bag_id, $user_id, $gift_user_id,$bag_gift['gift_price'],$room_id,$box_turntable_log);
|
$reslut_draw_gift_data = $this->draw_gift_one($gift_bag_id, $user_id, $gift_user_id,$bag_gift['gift_price'],$room_id,$box_turntable_log);
|
||||||
if($reslut_draw_gift_data['code'] != 1){
|
if($reslut_draw_gift_data['code'] != 1){
|
||||||
@@ -158,6 +164,20 @@ class BlindBoxTurntableGift extends Model
|
|||||||
return ['code' => 0, 'msg' => '添加盲盒转盘结果记录失败', 'data' => null];
|
return ['code' => 0, 'msg' => '添加盲盒转盘结果记录失败', 'data' => null];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//扣除抽奖消耗的金币
|
||||||
|
//扣除用户金币并记录日志
|
||||||
|
$wallet_update = model('GiveGift')->change_user_cion_or_earnings_log($user_id,$bag_gift_price,$room_id,1,10,'盲盒转盘抽奖消耗');
|
||||||
|
if(!$wallet_update){
|
||||||
|
Db::rollback();
|
||||||
|
return ['code' => 0, 'msg' => '扣除用户金币失败', 'data' => null];
|
||||||
|
}
|
||||||
|
//用户财富等级更新
|
||||||
|
$user_level = model('Level')->user_level_data_update($user_id,$bag_gift_price,1,$room_id);
|
||||||
|
if(!$user_level){
|
||||||
|
Db::rollback();
|
||||||
|
return ['code' => 0, 'msg' => '用户等级更新失败', 'data' => null];
|
||||||
|
}
|
||||||
|
|
||||||
db::commit();
|
db::commit();
|
||||||
} catch(\Exception $e) {
|
} catch(\Exception $e) {
|
||||||
db::rollback();
|
db::rollback();
|
||||||
|
|||||||
@@ -79,24 +79,26 @@ class GiveGift extends Model
|
|||||||
}
|
}
|
||||||
//金币购买送礼 1金币购买 2送背包礼物
|
//金币购买送礼 1金币购买 2送背包礼物
|
||||||
if ($type == 1) {
|
if ($type == 1) {
|
||||||
//送给所有人的总价格
|
if(!isset($ext['is_draw_gift']) || $ext['is_draw_gift'] != 1){// 非盲盒转盘
|
||||||
$all_gift_price = $gift_info['gift_price'] * $num * count($toarray);
|
//送给所有人的总价格
|
||||||
//判断是否有足够的金币
|
$all_gift_price = $gift_info['gift_price'] * $num * count($toarray);
|
||||||
$user_waller = db::name('user_wallet')->where(['user_id'=>$uid])->find();
|
//判断是否有足够的金币
|
||||||
if ($user_waller['coin'] < $all_gift_price) {
|
$user_waller = db::name('user_wallet')->where(['user_id'=>$uid])->find();
|
||||||
return ['code' => 0, 'msg' => '用户金币不足', 'data' => null];
|
if ($user_waller['coin'] < $all_gift_price) {
|
||||||
}
|
return ['code' => 0, 'msg' => '用户金币不足', 'data' => null];
|
||||||
//扣除用户金币并记录日志
|
}
|
||||||
$wallet_update = $this -> change_user_cion_or_earnings_log($uid,$all_gift_price,$from_id,1,10,'用户金币购买礼物');
|
//扣除用户金币并记录日志
|
||||||
if(!$wallet_update){
|
$wallet_update = $this -> change_user_cion_or_earnings_log($uid,$all_gift_price,$from_id,1,10,'用户金币购买礼物');
|
||||||
Db::rollback();
|
if(!$wallet_update){
|
||||||
return ['code' => 0, 'msg' => '扣除用户金币失败', 'data' => null];
|
Db::rollback();
|
||||||
}
|
return ['code' => 0, 'msg' => '扣除用户金币失败', 'data' => null];
|
||||||
//用户财富等级更新
|
}
|
||||||
$user_level = model('Level')->user_level_data_update($uid,$all_gift_price,1,$roomId);
|
//用户财富等级更新
|
||||||
if(!$user_level){
|
$user_level = model('Level')->user_level_data_update($uid,$all_gift_price,1,$roomId);
|
||||||
Db::rollback();
|
if(!$user_level){
|
||||||
return ['code' => 0, 'msg' => '用户等级更新失败', 'data' => null];
|
Db::rollback();
|
||||||
|
return ['code' => 0, 'msg' => '用户等级更新失败', 'data' => null];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
//背包礼物是否充足
|
//背包礼物是否充足
|
||||||
|
|||||||
Reference in New Issue
Block a user