new:create job,segment,segment_constant,segment_company and currency migration file . #1

This commit is contained in:
weichien00
2021-06-25 03:06:30 +08:00
parent 168881e98a
commit 0e73012be2
5 changed files with 192 additions and 0 deletions
@@ -0,0 +1,36 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateJobsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
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');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('jobs');
}
}
@@ -0,0 +1,37 @@
<?php
use App\Classes\ValueObjects\Constants\ApprovalStatus;
use App\Classes\ValueObjects\Constants\SegmentConstants;
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateSegmentsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('segments', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->integer('type')->default(SegmentConstants::STANDARD_SEGMENT);
$table->integer('status')->default(ApprovalStatus::APPROVED);
$table->softDeletes();
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('segments');
}
}
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateSegmentConstantsTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('segment_constants', function (Blueprint $table) {
$table->id();
$table->foreignId('segment_id')->unsigned();
$table->string('name');
$table->string('reference');
$table->json('detail');
$table->softDeletes();
$table->timestamps();
$table->foreign('segment_id')->references('id')->on('segments');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('segment_constants');
}
}
@@ -0,0 +1,43 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateSegmentCompaniesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('segment_companies', function (Blueprint $table) {
$table->foreignId('segment_id')->unsigned();
$table->foreignId('company_id')->unsigned();
$table->softDeletes();
$table->timestamps();
$table->primary(['segment_id', 'company_id']);
$table->foreign('segment_id')->references('id')->on('segments');
$table->foreign('company_id')->references('id')->on('companies');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::table('segment_companies', function (Blueprint $table) {
$table->dropForeign('segment_companies_segment_id_foreign');
$table->dropForeign('segment_companies_company_id_foreign');
});
Schema::dropIfExists('segment_companies');
}
}
@@ -0,0 +1,38 @@
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateCurrenciesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('currencies', function (Blueprint $table) {
$table->id();
$table->foreignId('country_id')->unsigned();
$table->string('name');
$table->string('short_code');
$table->string('symbol')->nullable();
$table->softDeletes();
$table->timestamps();
$table->foreign('country_id')->references('id')->on('countries');
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('currencies');
}
}