File: /home/armgroup/libs/database/migrations/2021_08_23_120734_create_orders_table.php
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class CreateOrdersTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('orders', function (Blueprint $table) {
$table->id();
$table->foreignId('user_id')->constrained()->onUpdate('cascade')->onDelete('cascade');
$table->foreignId('city_id')->nullable()->constrained()->onUpdate('cascade')->onDelete('set null');
$table->string('tracking_code', 50)->unique();
$table->text('description')->nullable();
$table->unsignedBigInteger('price');
$table->unsignedBigInteger('discount');
$table->unsignedBigInteger('discount_code_price');
$table->unsignedBigInteger('shipping_price');
$table->unsignedTinyInteger('shipping_type')->nullable()->default(null);
$table->date('delivery_date')->nullable()->default(null);
$table->string('delivery_time')->nullable()->default(null);
$table->string('delivery_code')->nullable()->default(null);
$table->boolean('checked')->default(false);
$table->unsignedTinyInteger('payment_type')->default(\App\Enums\OrderPaymentType::OFFLINE);
$table->unsignedTinyInteger('status')->default(\App\Enums\OrderStatus::CANCELED);
$table->timestamps();
});
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('orders');
}
}