migrations/Version20230220133203.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. final class Version20230220133203 extends AbstractMigration
  7. {
  8.     public function getDescription(): string
  9.     {
  10.         return 'Add relation ManyToMany to city and neighborhood fields';
  11.     }
  12.     public function up(Schema $schema): void
  13.     {
  14.         $this->addSql('CREATE TABLE business_request_neighborhood (business_request_entity_id UUID NOT NULL, 
  15.         neighborhood_id INT NOT NULL, PRIMARY KEY(business_request_entity_id, neighborhood_id))');
  16.         $this->addSql('CREATE INDEX IDX_E7649CEC22E18243 ON business_request_neighborhood 
  17.         (business_request_entity_id)');
  18.         $this->addSql('CREATE INDEX IDX_E7649CEC803BB24B ON business_request_neighborhood (neighborhood_id)');
  19.         $this->addSql('COMMENT ON COLUMN business_request_neighborhood.business_request_entity_id 
  20.         IS \'(DC2Type:ulid)\'');
  21.         $this->addSql('CREATE TABLE business_request_city (business_request_entity_id UUID NOT NULL, 
  22.         city_id INT NOT NULL, PRIMARY KEY(business_request_entity_id, city_id))');
  23.         $this->addSql('CREATE INDEX IDX_11D4087D22E18243 ON business_request_city (business_request_entity_id)');
  24.         $this->addSql('CREATE INDEX IDX_11D4087D8BAC62AF ON business_request_city (city_id)');
  25.         $this->addSql('COMMENT ON COLUMN business_request_city.business_request_entity_id IS \'(DC2Type:ulid)\'');
  26.         $this->addSql('ALTER TABLE business_request_neighborhood ADD CONSTRAINT FK_E7649CEC22E18243 
  27.         FOREIGN KEY (business_request_entity_id) REFERENCES business_request (id) ON DELETE CASCADE NOT 
  28.         DEFERRABLE INITIALLY IMMEDIATE');
  29.         $this->addSql('ALTER TABLE business_request_neighborhood ADD CONSTRAINT FK_E7649CEC803BB24B 
  30.         FOREIGN KEY (neighborhood_id) REFERENCES neighborhood (id) ON DELETE CASCADE NOT DEFERRABLE 
  31.         INITIALLY IMMEDIATE');
  32.         $this->addSql('ALTER TABLE business_request_city ADD CONSTRAINT FK_11D4087D22E18243 
  33.         FOREIGN KEY (business_request_entity_id) REFERENCES business_request (id) ON DELETE CASCADE NOT DEFERRABLE 
  34.         INITIALLY IMMEDIATE');
  35.         $this->addSql('ALTER TABLE business_request_city ADD CONSTRAINT FK_11D4087D8BAC62AF FOREIGN KEY (city_id) 
  36.         REFERENCES city (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
  37.         $this->addSql('ALTER TABLE business_request DROP neighborhood');
  38.         $this->addSql('ALTER TABLE business_request DROP city');
  39.         $this->addSql('ALTER TABLE business_request ALTER price DROP NOT NULL');
  40.     }
  41.     public function down(Schema $schema): void
  42.     {
  43.         $this->addSql('ALTER TABLE business_request_neighborhood DROP CONSTRAINT FK_E7649CEC22E18243');
  44.         $this->addSql('ALTER TABLE business_request_neighborhood DROP CONSTRAINT FK_E7649CEC803BB24B');
  45.         $this->addSql('ALTER TABLE business_request_city DROP CONSTRAINT FK_11D4087D22E18243');
  46.         $this->addSql('ALTER TABLE business_request_city DROP CONSTRAINT FK_11D4087D8BAC62AF');
  47.         $this->addSql('DROP TABLE business_request_neighborhood');
  48.         $this->addSql('DROP TABLE business_request_city');
  49.         $this->addSql('ALTER TABLE business_request ADD neighborhood VARCHAR(255) DEFAULT NULL');
  50.         $this->addSql('ALTER TABLE business_request ADD city INT NOT NULL');
  51.         $this->addSql('ALTER TABLE business_request ALTER price SET NOT NULL');
  52.     }
  53. }