migrations/Version20231004163159.php line 1

  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 Version20231004163159 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 after_sales (id INT AUTO_INCREMENT NOT NULL, number VARCHAR(255) NOT NULL, marking VARCHAR(255) NOT NULL, lastEditedAt DATETIME NOT NULL, lastEditedBy VARCHAR(255) NOT NULL, productsReceivedAt DATETIME NOT NULL, openedAt DATETIME NOT NULL, openedBy VARCHAR(255) NOT NULL, completedAt DATETIME DEFAULT NULL, completedBy VARCHAR(255) DEFAULT NULL, analyzedAt DATETIME DEFAULT NULL, analyzedBy VARCHAR(255) DEFAULT NULL, reportSentAt DATETIME DEFAULT NULL, reportSentBy VARCHAR(255) DEFAULT NULL, decisionMadeAt DATETIME DEFAULT NULL, decisionMadeBy VARCHAR(255) DEFAULT NULL, closedAt DATETIME DEFAULT NULL, closedBy VARCHAR(255) DEFAULT NULL, cancelledAt DATETIME DEFAULT NULL, cancelledBy VARCHAR(255) DEFAULT NULL, sender VARCHAR(255) NOT NULL, senderCountry VARCHAR(255) DEFAULT NULL, storageArea VARCHAR(255) DEFAULT NULL, mdr TINYINT(1) NOT NULL, mdrNumber INT DEFAULT NULL, circuitBoards TINYINT(1) NOT NULL, circuitBoardsNumber INT DEFAULT NULL, modules TINYINT(1) NOT NULL, modulesNumber INT DEFAULT NULL, accessories TINYINT(1) NOT NULL, accessoriesNumber INT DEFAULT NULL, freeRoller TINYINT(1) NOT NULL, freeRollerNumber INT DEFAULT NULL, otherProduct TINYINT(1) NOT NULL, otherProductNumber INT DEFAULT NULL, packageCondition LONGTEXT DEFAULT NULL, ideCustomer VARCHAR(255) DEFAULT NULL, ideCustomerCountry VARCHAR(255) DEFAULT NULL, ncNumber VARCHAR(255) DEFAULT NULL, customerInformations LONGTEXT DEFAULT NULL, reportSentOn DATE DEFAULT NULL, customerAnswer TINYINT(1) DEFAULT NULL, treatmentOpened TINYINT(1) DEFAULT NULL, treatmentOpenedBy VARCHAR(255) DEFAULT NULL, treatmentOpenedAt DATETIME DEFAULT NULL, treatmentReason SMALLINT DEFAULT NULL, treatmentComment LONGTEXT DEFAULT NULL, commentComplementary LONGTEXT DEFAULT NULL, salesValidationDate DATETIME DEFAULT NULL, salesValidationComment VARCHAR(255) DEFAULT NULL, salesValidationBy VARCHAR(255) DEFAULT NULL, reportSendAt DATETIME DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  19.         $this->addSql('CREATE TABLE after_sales_recommandations (id INT AUTO_INCREMENT NOT NULL, reference VARCHAR(255) NOT NULL, ofNumber VARCHAR(255) NOT NULL, quantity INT NOT NULL, recommandation SMALLINT DEFAULT NULL, comment LONGTEXT DEFAULT NULL, reportSentOn DATE DEFAULT NULL, afterSale_id INT DEFAULT NULL, INDEX IDX_CBF3FEA66FCF631D (afterSale_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  20.         $this->addSql('CREATE TABLE after_sales_technical_analyses (id INT AUTO_INCREMENT NOT NULL, reference VARCHAR(255) NOT NULL, ofNumber VARCHAR(255) NOT NULL, manufacturedOn DATE DEFAULT NULL, quantity INT NOT NULL, sentToSupplier TINYINT(1) NOT NULL, supplier VARCHAR(255) DEFAULT NULL, sentOn DATE DEFAULT NULL, returnedOn DATE DEFAULT NULL, comment LONGTEXT DEFAULT NULL, liability LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\', recommandation SMALLINT DEFAULT NULL, afterSale_id INT DEFAULT NULL, INDEX IDX_76C7E0796FCF631D (afterSale_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  21.         $this->addSql('CREATE TABLE after_sales_treatments (id INT AUTO_INCREMENT NOT NULL, reference VARCHAR(255) NOT NULL, ofNumber VARCHAR(255) NOT NULL, quantity INT NOT NULL, treatment SMALLINT DEFAULT NULL, comment LONGTEXT DEFAULT NULL, orderNumber VARCHAR(255) DEFAULT NULL, plannedDate DATE DEFAULT NULL, afterSale_id INT DEFAULT NULL, INDEX IDX_550BAC8F6FCF631D (afterSale_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
  22.         $this->addSql('ALTER TABLE after_sales_recommandations ADD CONSTRAINT FK_CBF3FEA66FCF631D FOREIGN KEY (afterSale_id) REFERENCES after_sales (id)');
  23.         $this->addSql('ALTER TABLE after_sales_technical_analyses ADD CONSTRAINT FK_76C7E0796FCF631D FOREIGN KEY (afterSale_id) REFERENCES after_sales (id)');
  24.         $this->addSql('ALTER TABLE after_sales_treatments ADD CONSTRAINT FK_550BAC8F6FCF631D FOREIGN KEY (afterSale_id) REFERENCES after_sales (id)');
  25.         $this->addSql('ALTER TABLE attachments ADD afterSale_id INT DEFAULT NULL, ADD afterSaleProduct_id INT DEFAULT NULL, ADD afterSaleRecommandation_id INT DEFAULT NULL, ADD afterSaleTreatment_id INT DEFAULT NULL');
  26.         $this->addSql('ALTER TABLE attachments ADD CONSTRAINT FK_47C4FAD66FCF631D FOREIGN KEY (afterSale_id) REFERENCES after_sales (id)');
  27.         $this->addSql('ALTER TABLE attachments ADD CONSTRAINT FK_47C4FAD618288E5C FOREIGN KEY (afterSaleProduct_id) REFERENCES after_sales_technical_analyses (id)');
  28.         $this->addSql('ALTER TABLE attachments ADD CONSTRAINT FK_47C4FAD674DDEEB4 FOREIGN KEY (afterSaleRecommandation_id) REFERENCES after_sales_recommandations (id)');
  29.         $this->addSql('ALTER TABLE attachments ADD CONSTRAINT FK_47C4FAD6BF979306 FOREIGN KEY (afterSaleTreatment_id) REFERENCES after_sales_treatments (id)');
  30.         $this->addSql('CREATE INDEX IDX_47C4FAD66FCF631D ON attachments (afterSale_id)');
  31.         $this->addSql('CREATE INDEX IDX_47C4FAD618288E5C ON attachments (afterSaleProduct_id)');
  32.         $this->addSql('CREATE INDEX IDX_47C4FAD674DDEEB4 ON attachments (afterSaleRecommandation_id)');
  33.         $this->addSql('CREATE INDEX IDX_47C4FAD6BF979306 ON attachments (afterSaleTreatment_id)');
  34.         $this->addSql('ALTER TABLE treatments CHANGE realisedBy realisedBy LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:json)\'');
  35.     }
  36.     public function down(Schema $schema): void
  37.     {
  38.         // this down() migration is auto-generated, please modify it to your needs
  39.         $this->addSql('ALTER TABLE attachments DROP FOREIGN KEY FK_47C4FAD66FCF631D');
  40.         $this->addSql('ALTER TABLE attachments DROP FOREIGN KEY FK_47C4FAD674DDEEB4');
  41.         $this->addSql('ALTER TABLE attachments DROP FOREIGN KEY FK_47C4FAD618288E5C');
  42.         $this->addSql('ALTER TABLE attachments DROP FOREIGN KEY FK_47C4FAD6BF979306');
  43.         $this->addSql('ALTER TABLE after_sales_recommandations DROP FOREIGN KEY FK_CBF3FEA66FCF631D');
  44.         $this->addSql('ALTER TABLE after_sales_technical_analyses DROP FOREIGN KEY FK_76C7E0796FCF631D');
  45.         $this->addSql('ALTER TABLE after_sales_treatments DROP FOREIGN KEY FK_550BAC8F6FCF631D');
  46.         $this->addSql('DROP TABLE after_sales');
  47.         $this->addSql('DROP TABLE after_sales_recommandations');
  48.         $this->addSql('DROP TABLE after_sales_technical_analyses');
  49.         $this->addSql('DROP TABLE after_sales_treatments');
  50.         $this->addSql('DROP INDEX IDX_47C4FAD66FCF631D ON attachments');
  51.         $this->addSql('DROP INDEX IDX_47C4FAD618288E5C ON attachments');
  52.         $this->addSql('DROP INDEX IDX_47C4FAD674DDEEB4 ON attachments');
  53.         $this->addSql('DROP INDEX IDX_47C4FAD6BF979306 ON attachments');
  54.         $this->addSql('ALTER TABLE attachments DROP afterSale_id, DROP afterSaleProduct_id, DROP afterSaleRecommandation_id, DROP afterSaleTreatment_id');
  55.         $this->addSql('ALTER TABLE treatments CHANGE realisedBy realisedBy VARCHAR(255) DEFAULT NULL');
  56.     }
  57. }