params = $params; Log::info(date('Y-m-d H:i:d').':'.json_encode($params)); } /** * Execute the job. * * @return void */ public function handle() { $grab_id = $this->params['grab_id']; $new_grab_id = $this->params['new_grab_id']; $seat_number = $this->params['seat_number']; $price = $this->params['price']; $winer_uid = $this->params['winer_uid']; $redis = Redis::connection(); //开奖了,旧的一期结束了 $redis->del('kge_grabgift_num_'.$grab_id); $redis->del('kge_grabgift_seatnum_'.$grab_id); $redis->del('kge_grabgift_data_'.$grab_id); $redis->del('kge_grabgift_'.$grab_id); $rs3 = DB::table('hx_grabgift')->where('id',$grab_id)->update(['status'=>1,'grabtime'=>time()]);//更新开奖时间 $rs2 = DB::table('hx_grabgift_log')->where('grab_id',$grab_id)->where('user_id',$winer_uid)->update(['grabstatus'=>1]);//中奖者 //发奖 $grab_info = DB::table('hx_grabgift')->where('id',$grab_id)->first(); $gift_info = DB::table('hx_gift')->where('id',$grab_info->gift_id)->first(); if(!empty($gift_info)){ $giftdata = [ 'user_id' => $winer_uid, 'gift_id' => $grab_info->gift_id, 'name' => $gift_info->name, 'image' => $gift_info->image, 'gif_image' => $gift_info->special, 'value' => $gift_info->value, 'number' => 1, 'get_way' => 1, 'createtime' => time(), ]; $rs4 = DB::table('hx_gift_back')->insertGetId($giftdata); } //新的一期开始了 $redis->set('kge_grabgift_'.$new_grab_id,$seat_number); $redis->set('kge_grabgift_lastgrabid',$new_grab_id); $redis->set('kge_grabgift_lock',0); $data = [ 'grab_id' => $new_grab_id, 'seat_number' => $seat_number, 'price' => $price, 'kge_grabgift_lock' => 0, ]; $this->sendGrabgift('startnew',$data); } /** * 房间中全民抢礼物,全服通告 */ public function sendGrabgift($type,$data) { $messageData = [ 'type' => $type, 'data' => $data ]; $Gateway = new Gateway(); $Gateway::$registerAddress = '127.0.0.1:2345'; $Gateway::sendToAll(json_encode($messageData)); } }