diff --git a/application/adminapi/controller/BlindBox.php b/application/adminapi/controller/BlindBox.php index 116b738..d383f16 100644 --- a/application/adminapi/controller/BlindBox.php +++ b/application/adminapi/controller/BlindBox.php @@ -254,7 +254,30 @@ class BlindBox extends adminApi } foreach ($gift_bag_detail as $k=>$v){ $where['gift_bag_detail_id'] = $v['id']; - $bag_data = db::name('vs_room_pan')->where($where)->update(['remaining_number'=>$v['quantity']]); + $room_pan = db::name('vs_room_pan')->where($where)->select(); + if(!empty($room_pan)){ + $bag_data = db::name('vs_room_pan')->where($where)->update(['remaining_number'=>$v['quantity']]); + }else{ + if($room_id){ + $bag_data = db::name('vs_room_pan')->insert([ + 'room_id' => $room_id, + 'gift_bag_detail_id' => $v['id'], + 'remaining_number' => $v['quantity'], + 'createtime' => time(), + ]); + }else{ + $room_ids = db::name('vs_room')->where(['is_open_blind_box_turntable'=>1,'room_status'=>1])->value('id'); + foreach ($room_ids as $mid){ + $bag_data = db::name('vs_room_pan')->insert([ + 'room_id' => $mid, + 'gift_bag_detail_id' => $v['id'], + 'remaining_number' => $v['quantity'], + 'createtime' => time(), + ]); + } + } + } + } } foreach ($gift_bag_detail as $k=>$v){