migrations/Version20180502075306.php line 1

Open in your IDE?
  1. <?php declare(strict_types 1);
  2. namespace DoctrineMigrations;
  3. use Doctrine\Migrations\AbstractMigration;
  4. use Doctrine\DBAL\Schema\Schema;
  5. /**
  6.  * Auto-generated Migration: Please modify to your needs!
  7.  */
  8. class Version20180502075306 extends AbstractMigration
  9. {
  10.     public function preUp(Schema $schema) : void
  11.     {
  12.         // Remove some duplicated accounts in the tallo2 database
  13.         $this->addSql('UPDATE users SET email="invalid1@talloverde.com", is_active=0 WHERE id=4117');
  14.         $this->addSql('UPDATE users SET email="invalid2@talloverde.com", is_active=0 WHERE id=25958');
  15.         $this->addSql('UPDATE users SET email="invalid3@talloverde.com", is_active=0 WHERE id=23507');
  16.         $this->addSql('UPDATE users SET email="invalid4@talloverde.com", is_active=0 WHERE id=4526');
  17.     }
  18.     public function up(Schema $schema) : void
  19.     {
  20.         // this up() migration is auto-generated, please modify it to your needs
  21.         $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql''Migration can only be executed safely on \'mysql\'.');
  22.         $this->addSql('DROP INDEX UNIQ_1483A5E9F85E0677 ON users');
  23.         $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E9E7927C74 ON users (email)');
  24.         $this->addSql('ALTER TABLE users CHANGE username username VARCHAR(100) DEFAULT NULL');
  25.         // roles
  26.         $this->addSql('ALTER TABLE user_role DROP FOREIGN KEY FK_2DE8C6A3D60322AC');
  27.         $this->addSql('DROP TABLE role');
  28.         $this->addSql('DROP TABLE user_role');
  29.         $this->addSql('ALTER TABLE users ADD roles VARCHAR(255) NOT NULL DEFAULT \'ROLE_USER\'');
  30.         // drop unneeded clients data
  31.         $this->addSql('ALTER TABLE clients DROP FOREIGN KEY FK_C82E7420A4B75B');
  32.         $this->addSql('DROP INDEX IDX_C82E7420A4B75B ON clients');
  33.         $this->addSql('ALTER TABLE clients DROP phoneNumber, DROP birthdayDate, DROP birthdayMonth, DROP howYouKnowAboutUs, DROP documentNumber, DROP idReferral');
  34.     }
  35.     public function down(Schema $schema) : void
  36.     {
  37.         // this down() migration is auto-generated, please modify it to your needs
  38.         $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql''Migration can only be executed safely on \'mysql\'.');
  39.         $this->addSql('DROP INDEX UNIQ_1483A5E9E7927C74 ON users');
  40.         $this->addSql('CREATE UNIQUE INDEX UNIQ_1483A5E9F85E0677 ON users (username)');
  41.         $this->addSql('ALTER TABLE users CHANGE username username VARCHAR(100) NOT NULL COLLATE utf8_unicode_ci');
  42.         // roles
  43.         $this->addSql('CREATE TABLE role (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(30) NOT NULL COLLATE utf8_unicode_ci, role VARCHAR(20) NOT NULL COLLATE utf8_unicode_ci, UNIQUE INDEX UNIQ_57698A6A57698A6A (role), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  44.         $this->addSql('CREATE TABLE user_role (user_id INT NOT NULL, role_id INT NOT NULL, INDEX IDX_2DE8C6A3A76ED395 (user_id), INDEX IDX_2DE8C6A3D60322AC (role_id), PRIMARY KEY(user_id, role_id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB');
  45.         $this->addSql('ALTER TABLE user_role ADD CONSTRAINT FK_2DE8C6A3A76ED395 FOREIGN KEY (user_id) REFERENCES users (id) ON DELETE CASCADE');
  46.         $this->addSql('ALTER TABLE user_role ADD CONSTRAINT FK_2DE8C6A3D60322AC FOREIGN KEY (role_id) REFERENCES role (id) ON DELETE CASCADE');
  47.         $this->addSql('ALTER TABLE users DROP roles');
  48.         // unneeded client data
  49.         $this->addSql('ALTER TABLE clients ADD phoneNumber VARCHAR(100) DEFAULT NULL COLLATE utf8_unicode_ci, ADD birthdayDate INT DEFAULT NULL, ADD birthdayMonth INT DEFAULT NULL, ADD howYouKnowAboutUs VARCHAR(100) DEFAULT NULL COLLATE utf8_unicode_ci, ADD documentNumber VARCHAR(20) DEFAULT NULL COLLATE utf8_unicode_ci, ADD idReferral INT DEFAULT NULL');
  50.         $this->addSql('ALTER TABLE clients ADD CONSTRAINT FK_C82E7420A4B75B FOREIGN KEY (idReferral) REFERENCES clients (id)');
  51.         $this->addSql('CREATE INDEX IDX_C82E7420A4B75B ON clients (idReferral)');
  52.     }
  53. }