migrations/Version20241119142500.php line 1

Open in your IDE?
  1. <?php
  2. declare(strict_types=1);
  3. namespace DoctrineMigrations;
  4. use Doctrine\DBAL\Schema\Schema;
  5. use Doctrine\DBAL\Types\Types;
  6. use Doctrine\Migrations\AbstractMigration;
  7. final class Version20241119142500 extends AbstractMigration
  8. {
  9.     public function getDescription(): string
  10.     {
  11.         return 'Remove unused data about coverage delays';
  12.     }
  13.     public function up(Schema $schema): void
  14.     {
  15.         $this->skipIf(
  16.             false === $schema->getTable('member_application')->hasColumn('is_default_waiting_period_used'),
  17.             'The is_default_waiting_period_used is already removed from the member_application table!'
  18.         );
  19.         $memberApplicationTable $schema->getTable('member_application');
  20.         $memberApplicationTable->dropColumn('is_default_waiting_period_used');
  21.         $memberApplicationTable $schema->getTable('member_application_co_member');
  22.         $memberApplicationTable->dropColumn('rc_waiting_period_end_date');
  23.         $memberApplicationTable->dropColumn('pp_waiting_period_end_date');
  24.         $memberApplicationTable->dropColumn('do_waiting_period_end_date');
  25.     }
  26.     public function down(Schema $schema): void
  27.     {
  28.         $this->skipIf(
  29.             true === $schema->getTable('member_application')->hasColumn('is_default_waiting_period_used'),
  30.             'The is_default_waiting_period_used field already exists in the member_application table!'
  31.         );
  32.         $memberApplicationTable $schema->getTable('member_application');
  33.         $memberApplicationTable->addColumn('is_default_waiting_period_used'Types::BOOLEAN)->setNotnull(true)->setDefault(true);
  34.         $memberApplicationTable $schema->getTable('member_application_co_member');
  35.         $memberApplicationTable->addColumn('rc_waiting_period_end_date'Types::DATETIME_IMMUTABLE)->setNotnull(false)->setDefault(null);
  36.         $memberApplicationTable->addColumn('pp_waiting_period_end_date'Types::DATETIME_IMMUTABLE)->setNotnull(false)->setDefault(null);
  37.         $memberApplicationTable->addColumn('do_waiting_period_end_date'Types::DATETIME_IMMUTABLE)->setNotnull(false)->setDefault(null);
  38.     }
  39. }