/**
  * Run the migrations.
  */
 public function up()
 {
     Schema::create('lds_sealing_status', function (Blueprint $table) {
         $table->increments('id');
         $table->unsignedInteger('lds_sealing_id');
         $table->unsignedInteger('lds_status_id');
         $table->boolean('standard')->default(false);
         // Indexes
         $table->unique(['lds_sealing_id', 'lds_status_id']);
         $table->unique(['lds_status_id', 'lds_sealing_id']);
         // Foreign keys
         $table->foreign('lds_sealing_id')->references('id')->on('lds_sealing');
         $table->foreign('lds_status_id')->references('id')->on('lds_status');
     });
     DB::transaction(function () {
         LdsSealingStatus::unguard();
         foreach ($this->data as $datum) {
             $lds_sealing = LdsSealing::where(['value' => $datum['sealing']])->firstOrFail();
             $lds_status = LdsStatus::where(['value' => $datum['status']])->firstOrFail();
             $lds_sealing_status = new LdsSealingStatus(['standard' => true]);
             $lds_sealing_status->ldsSealing()->associate($lds_sealing);
             $lds_sealing_status->ldsStatus()->associate($lds_status);
             $lds_sealing_status->save();
         }
         LdsSealingStatus::reguard();
     });
 }
 /**
  * Run the migrations.
  */
 public function up()
 {
     Schema::create('lds_sealing', function (Blueprint $table) {
         $table->increments('id');
         $table->char('value', 4)->unique();
         $table->boolean('to_family');
         $table->boolean('standard')->default(false);
     });
     DB::transaction(function () {
         LdsSealing::unguard();
         foreach ($this->data as $datum) {
             LdsSealing::create($datum);
         }
         LdsSealing::reguard();
     });
 }