queue = 'order:' . ($orderId % Order::queueCount()); } $this->orderId = $orderId; } /** * Execute the job. * * @return void */ public function handle() { \Log::info('订单'.$this->orderId.'received任务开始执行'); DB::transaction(function () { $orderId = $this->orderId; \YunShop::app()->uniacid = null; $order = Order::find($orderId); \YunShop::app()->uniacid = $order->uniacid; Setting::$uniqueAccountId = $order->uniacid; if(!$order->orderReceivedJob){ $order->setRelation('orderReceivedJob',new OrderReceivedJob(['order_id'=>$order->id])); $order->orderReceivedJob->save(); } if($order->orderReceivedJob->status == 'finished'){ \Log::error('订单收货事件触发失败',"{$orderId}orderReceivedJob记录已"); return; } $order->orderReceivedJob->status = 'finished'; $order->orderReceivedJob->save(); $event = new AfterOrderReceivedEvent($order); app('events')->safeFire($event,$order->id); }); \Log::info('订单'.$this->orderId.'received任务执行完成'); } }