migrations/Version20220529090811.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\Migrations\AbstractMigration;
  6. /**
  7.  * Auto-generated Migration: Please modify to your needs!
  8.  */
  9. final class Version20220529090811 extends AbstractMigration
  10. {
  11.     public function getDescription(): string
  12.     {
  13.         return '';
  14.     }
  15.     public function up(Schema $schema): void
  16.     {
  17.         // this up() migration is auto-generated, please modify it to your needs
  18.         $this->addSql('CREATE TABLE offer_package (id INT AUTO_INCREMENT NOT NULL, offer_package_task_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, description LONGTEXT NOT NULL, INDEX IDX_7F60A19C137BE1DB (offer_package_task_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  19.         $this->addSql('CREATE TABLE offer_package_task (id INT AUTO_INCREMENT NOT NULL, name LONGTEXT NOT NULL, content LONGTEXT DEFAULT NULL, repeat_type INT DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  20.         $this->addSql('ALTER TABLE offer_package ADD CONSTRAINT FK_7F60A19C137BE1DB FOREIGN KEY (offer_package_task_id) REFERENCES offer_package_task (id)');
  21.         $this->addSql('ALTER TABLE project ADD offer_package_id INT DEFAULT NULL');
  22.         $this->addSql('ALTER TABLE project ADD CONSTRAINT FK_2FB3D0EE68E6682B FOREIGN KEY (offer_package_id) REFERENCES offer_package (id)');
  23.         $this->addSql('CREATE INDEX IDX_2FB3D0EE68E6682B ON project (offer_package_id)');
  24.         $this->addSql('ALTER TABLE offer_package DROP FOREIGN KEY FK_7F60A19C137BE1DB');
  25.         $this->addSql('DROP INDEX IDX_7F60A19C137BE1DB ON offer_package');
  26.         $this->addSql('ALTER TABLE offer_package DROP offer_package_task_id');
  27.         $this->addSql('ALTER TABLE offer_package_task CHANGE repeat_type offer_package_id INT DEFAULT NULL');
  28.         $this->addSql('ALTER TABLE offer_package_task ADD CONSTRAINT FK_E0AB15668E6682B FOREIGN KEY (offer_package_id) REFERENCES offer_package (id)');
  29.         $this->addSql('CREATE INDEX IDX_E0AB15668E6682B ON offer_package_task (offer_package_id)');
  30.         $this->addSql('ALTER TABLE offer_package_task DROP FOREIGN KEY FK_E0AB15668E6682B');
  31.         $this->addSql('DROP INDEX IDX_E0AB15668E6682B ON offer_package_task');
  32.         $this->addSql('ALTER TABLE offer_package_task DROP offer_package_id');
  33.         $this->addSql('CREATE TABLE offer_package_offer_package_task (offer_package_id INT NOT NULL, offer_package_task_id INT NOT NULL, INDEX IDX_F9406ED868E6682B (offer_package_id), INDEX IDX_F9406ED8137BE1DB (offer_package_task_id), PRIMARY KEY(offer_package_id, offer_package_task_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  34.         $this->addSql('ALTER TABLE offer_package_offer_package_task ADD CONSTRAINT FK_F9406ED868E6682B FOREIGN KEY (offer_package_id) REFERENCES offer_package (id) ON DELETE CASCADE');
  35.         $this->addSql('ALTER TABLE offer_package_offer_package_task ADD CONSTRAINT FK_F9406ED8137BE1DB FOREIGN KEY (offer_package_task_id) REFERENCES offer_package_task (id) ON DELETE CASCADE');
  36.         $this->addSql('ALTER TABLE offer_package ADD price DOUBLE PRECISION NOT NULL');
  37.         $this->addSql('ALTER TABLE offer_package_task ADD repeat_in_month INT DEFAULT NULL');
  38.         $this->addSql('CREATE TABLE project_offer_package (id INT AUTO_INCREMENT NOT NULL, project_id INT NOT NULL, offer_package_id INT NOT NULL, month DATETIME NOT NULL, data LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\', INDEX IDX_ABF1369A166D1F9C (project_id), INDEX IDX_ABF1369A68E6682B (offer_package_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  39.         $this->addSql('ALTER TABLE project_offer_package ADD CONSTRAINT FK_ABF1369A166D1F9C FOREIGN KEY (project_id) REFERENCES project (id)');
  40.         $this->addSql('ALTER TABLE project_offer_package ADD CONSTRAINT FK_ABF1369A68E6682B FOREIGN KEY (offer_package_id) REFERENCES offer_package (id)');
  41.     }
  42.     public function down(Schema $schema): void
  43.     {
  44.         // this down() migration is auto-generated, please modify it to your needs
  45.         $this->addSql('ALTER TABLE project DROP FOREIGN KEY FK_2FB3D0EE68E6682B');
  46.         $this->addSql('ALTER TABLE offer_package DROP FOREIGN KEY FK_7F60A19C137BE1DB');
  47.         $this->addSql('DROP TABLE offer_package');
  48.         $this->addSql('DROP TABLE offer_package_task');
  49.         $this->addSql('DROP INDEX IDX_2FB3D0EE68E6682B ON project');
  50.         $this->addSql('ALTER TABLE project DROP offer_package_id');
  51.         $this->addSql('ALTER TABLE offer_package ADD offer_package_task_id INT DEFAULT NULL');
  52.         $this->addSql('ALTER TABLE offer_package ADD CONSTRAINT FK_7F60A19C137BE1DB FOREIGN KEY (offer_package_task_id) REFERENCES offer_package_task (id)');
  53.         $this->addSql('CREATE INDEX IDX_7F60A19C137BE1DB ON offer_package (offer_package_task_id)');
  54.         $this->addSql('ALTER TABLE offer_package_task DROP FOREIGN KEY FK_E0AB15668E6682B');
  55.         $this->addSql('DROP INDEX IDX_E0AB15668E6682B ON offer_package_task');
  56.         $this->addSql('ALTER TABLE offer_package_task CHANGE offer_package_id repeat_type INT DEFAULT NULL');
  57.         $this->addSql('ALTER TABLE offer_package_task ADD offer_package_id INT DEFAULT NULL');
  58.         $this->addSql('ALTER TABLE offer_package_task ADD CONSTRAINT FK_E0AB15668E6682B FOREIGN KEY (offer_package_id) REFERENCES offer_package (id)');
  59.         $this->addSql('CREATE INDEX IDX_E0AB15668E6682B ON offer_package_task (offer_package_id)');
  60.         $this->addSql('DROP TABLE offer_package_offer_package_task');
  61.         $this->addSql('ALTER TABLE offer_package DROP price');
  62.         $this->addSql('ALTER TABLE offer_package_task DROP repeat_in_month');
  63.         $this->addSql('DROP TABLE project_offer_package');
  64.     }
  65. }