oQueueJob = new QueueJob(); } public function fire(Job $job, $data) { $this->oQueueJob->init($job); $checkId = isset($data['check_id']) ? intval($data['check_id']) : 0; $attempt = isset($data['attempt']) ? intval($data['attempt']) : 1; if ($checkId <= 0) { $this->oQueueJob->log("PlagiarismPoll 无效的 check_id,删除任务"); $job->delete(); return; } try { $svc = new PlagiarismService(); $svc->runPollStatus($checkId, $attempt); $this->oQueueJob->log("PlagiarismPoll 完成一次轮询 | check_id={$checkId} attempt={$attempt}"); $job->delete(); } catch (\Exception $e) { $this->oQueueJob->handleException($e, $job, "check_id={$checkId} attempt={$attempt}"); } catch (\Throwable $e) { $this->oQueueJob->handleException($e, $job, "check_id={$checkId} attempt={$attempt}"); } finally { $this->oQueueJob->finnal(); } } }