62 lines
1.8 KiB
PHP
62 lines
1.8 KiB
PHP
<?php
|
|
|
|
use Illuminate\Support\Facades\Schema;
|
|
use Illuminate\Database\Schema\Blueprint;
|
|
use Illuminate\Database\Migrations\Migration;
|
|
|
|
class CreateJobsTable extends Migration
|
|
{
|
|
/**
|
|
* Run the migrations.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function up()
|
|
{
|
|
if(!Schema::hasTable('jobs')) {
|
|
Schema::create('jobs', function (Blueprint $table) {
|
|
$table->bigIncrements('id');
|
|
$table->string('queue')->index();
|
|
$table->longText('payload');
|
|
$table->unsignedTinyInteger('attempts');
|
|
$table->unsignedInteger('reserved_at')->nullable();
|
|
$table->unsignedInteger('available_at');
|
|
$table->unsignedInteger('created_at');
|
|
});
|
|
}
|
|
|
|
if(!Schema::hasTable('failed_jobs')) {
|
|
Schema::create('failed_jobs', function (Blueprint $table) {
|
|
$table->bigIncrements('id');
|
|
$table->text('connection');
|
|
$table->text('queue');
|
|
$table->longText('payload');
|
|
$table->longText('exception');
|
|
$table->timestamp('failed_at')->useCurrent();
|
|
});
|
|
}
|
|
|
|
if(!Schema::hasTable('schedule_jobs')) {
|
|
Schema::create('schedule_jobs', function(Blueprint $table) {
|
|
$table->increments('id');
|
|
$table->string('job_name');
|
|
$table->string('job_state');
|
|
$table->dateTime('system_time');
|
|
$table->timestamps();
|
|
});
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Reverse the migrations.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function down()
|
|
{
|
|
Schema::dropIfExists('jobs');
|
|
Schema::dropIfExists('failed_jobs');
|
|
Schema::dropIfExists('schedule_jobs');
|
|
}
|
|
}
|