migrations/Version20220729085256.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 Version20220729085256 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 buyer (email VARCHAR(189) NOT NULL DEFAULT \'default@groupe.findis.fr\', code_name VARCHAR(190) NOT NULL, name VARCHAR(190) NOT NULL, PRIMARY KEY(email)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB' );
  19.         $this->addSql("INSERT INTO buyer (email, code_name, name) VALUES ('default@groupe.findis.fr','42','Default Buyer');");
  20.         
  21.         $this->addSql('ALTER TABLE api_token CHANGE token token VARCHAR(255) NOT NULL');
  22.         $this->addSql('ALTER TABLE app_configuration CHANGE symbol_price symbol_price VARCHAR(255) NOT NULL');
  23.         
  24.         $this->addSql('ALTER TABLE brand CHANGE brand_code brand_code VARCHAR(191) NOT NULL, CHANGE brand_name brand_name VARCHAR(255) NOT NULL');
  25.         $this->addSql('ALTER TABLE family CHANGE code code VARCHAR(191) NOT NULL, CHANGE label label VARCHAR(255) DEFAULT NULL, CHANGE color color VARCHAR(255) NOT NULL');
  26.         
  27.         $this->addSql('ALTER TABLE mail_agent CHANGE mail_addr mail_addr VARCHAR(190) NOT NULL');
  28.         $this->addSql('ALTER TABLE product ADD buyer_email VARCHAR(189) NOT NULL, CHANGE family_code family_code VARCHAR(191) NOT NULL, CHANGE sub_family_code sub_family_code VARCHAR(191) NOT NULL, CHANGE seller_code seller_code VARCHAR(191) NOT NULL, CHANGE brand_code brand_code VARCHAR(191) NOT NULL, CHANGE cdart cdart VARCHAR(255) DEFAULT NULL, CHANGE label label VARCHAR(255) DEFAULT NULL, CHANGE gen_cod gen_cod VARCHAR(255) NOT NULL');
  29.         
  30.         // When buyer_email is added, all the product already there does not have an email.
  31.         $this->addSql("UPDATE product set buyer_email = 'default@groupe.findis.fr'");
  32.         
  33.         $this->addSql('ALTER TABLE product ADD CONSTRAINT FK_D34A04 FOREIGN KEY (buyer_email) REFERENCES buyer (email)');
  34.         $this->addSql('CREATE INDEX IDX_D34A04 ON product (buyer_email)');
  35.         $this->addSql('ALTER TABLE proposition CHANGE quantity quantity VARCHAR(255) NOT NULL');
  36.         $this->addSql('ALTER TABLE seller CHANGE seller_code seller_code VARCHAR(191) NOT NULL, CHANGE seller_social_raison seller_social_raison VARCHAR(191) NOT NULL');
  37.         $this->addSql('ALTER TABLE sub_family CHANGE code code VARCHAR(191) NOT NULL, CHANGE family_code family_code VARCHAR(191) NOT NULL, CHANGE label label VARCHAR(255) DEFAULT NULL');
  38.         $this->addSql('ALTER TABLE sub_sub_family CHANGE label label VARCHAR(191) NOT NULL, CHANGE code code VARCHAR(191) NOT NULL, CHANGE color color VARCHAR(255) NOT NULL');
  39.         $this->addSql('ALTER TABLE user CHANGE client_type_id client_type_id INT NOT NULL, CHANGE login login VARCHAR(191) NOT NULL, CHANGE password password VARCHAR(255) NOT NULL');        
  40.     }
  41.     public function down(Schema $schema): void
  42.     {
  43.         // this down() migration is auto-generated, please modify it to your needs
  44.         $this->addSql('ALTER TABLE product DROP FOREIGN KEY FK_D34A04');
  45.         $this->addSql('DROP TABLE buyer');
  46.         $this->addSql('DROP INDEX FK_D34A04 ON product');
  47.         $this->addSql('ALTER TABLE product DROP buyer_email');
  48.         $this->addSql('ALTER TABLE user CHANGE client_type_id client_type_id INT DEFAULT 1 NOT NULL');
  49.     }
  50. }