/** * * * @return int */ public function addJob($job, $data, $delay = null) { $payload = $this->createPayload($job, $data); $job = new Job(); $job->status = Job::STATUS_OPEN; $job->scheduled_at = empty($delay) ? \Carbon\Carbon::now() : $delay; $job->payload = $payload; $job->save(); return $job->id; }
/** * * * @return void */ protected function getStats() { $jobs = Job::select(\Illuminate\Support\Facades\DB::raw('count(*) as jobs_count, status'))->groupBy('status')->get(); $o = ""; foreach ($jobs as $j) { switch ($j->status) { case Job::STATUS_OPEN: $o .= 'Open - '; break; case Job::STATUS_WAITING: $o .= 'Waiting - '; break; case Job::STATUS_STARTED: $o .= 'Started - '; break; case Job::STATUS_FINISHED: $o .= 'Done - '; break; case Job::STATUS_FAILED: $o .= 'Failed - '; break; } $o .= $j->jobs_count . " \n"; } return $o; }