migrations/Version20200904214927.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 Version20200904214927 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->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql''Migration can only be executed safely on \'mysql\'.');
  19.         $this->addSql('ALTER TABLE manufacturingProcessIngredients DROP FOREIGN KEY FK_6CD02C2CCDF9BDA3');
  20.         $this->addSql('ALTER TABLE product_item DROP FOREIGN KEY FK_CBEADBBCCDF9BDA3');
  21.         $this->addSql('ALTER TABLE recipes DROP FOREIGN KEY FK_A369E2B5CDF9BDA3');
  22.         $this->addSql('ALTER TABLE recipesBaseProducts DROP FOREIGN KEY FK_717C1EECD0A3F23E');
  23.         $this->addSql('ALTER TABLE manufacturingProcessIngredients DROP FOREIGN KEY FK_6CD02C2CD28A934B');
  24.         $this->addSql('ALTER TABLE manufacturingProcessSupplies DROP FOREIGN KEY FK_4F694ED6D28A934B');
  25.         $this->addSql('ALTER TABLE manufacturingProcesses DROP FOREIGN KEY FK_E5F22B4FB99919AD');
  26.         $this->addSql('ALTER TABLE recipesBaseProducts DROP FOREIGN KEY FK_717C1EEC6DCBA54');
  27.         $this->addSql('ALTER TABLE recipesSupplies DROP FOREIGN KEY FK_70EEA976DCBA54');
  28.         $this->addSql('ALTER TABLE manufacturingProcessSupplies DROP FOREIGN KEY FK_4F694ED6B1083C16');
  29.         $this->addSql('ALTER TABLE recipesSupplies DROP FOREIGN KEY FK_70EEA974AE911F1');
  30.         $this->addSql('ALTER TABLE supplyMovements DROP FOREIGN KEY FK_3CC9DAEBB1083C16');
  31.         $this->addSql('DROP TABLE baseProducts');
  32.         $this->addSql('DROP TABLE manufacturingProcessIngredients');
  33.         $this->addSql('DROP TABLE manufacturingProcessSupplies');
  34.         $this->addSql('DROP TABLE manufacturingProcesses');
  35.         $this->addSql('DROP TABLE product_item');
  36.         $this->addSql('DROP TABLE recipes');
  37.         $this->addSql('DROP TABLE recipesBaseProducts');
  38.         $this->addSql('DROP TABLE recipesSupplies');
  39.         $this->addSql('DROP TABLE supplyMovements');
  40.         $this->addSql('ALTER TABLE supplies RENAME TO inventory_item');
  41.     }
  42.     public function down(Schema $schema) : void
  43.     {
  44.         // this down() migration is auto-generated, please modify it to your needs
  45.         $this->abortIf($this->connection->getDatabasePlatform()->getName() !== 'mysql''Migration can only be executed safely on \'mysql\'.');
  46.         $this->addSql('ALTER TABLE inventory_item RENAME TO supplies');
  47.         $this->addSql('CREATE TABLE supplyMovements (id INT AUTO_INCREMENT NOT NULL, date DATETIME NOT NULL, quantity INT NOT NULL, type VARCHAR(1) CHARACTER SET utf8 NOT NULL COLLATE `utf8_unicode_ci`, notes LONGTEXT CHARACTER SET utf8 DEFAULT NULL COLLATE `utf8_unicode_ci`, balanceAfterMovement INT NOT NULL, idSupply INT DEFAULT NULL, idProvider INT DEFAULT NULL, idUser INT DEFAULT NULL, INDEX IDX_3CC9DAEBB1083C16 (idSupply), INDEX IDX_3CC9DAEBFE6E88D7 (idUser), INDEX IDX_3CC9DAEBC16759C7 (idProvider), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  48.         $this->addSql('CREATE TABLE baseProducts (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(100) CHARACTER SET utf8 NOT NULL COLLATE `utf8_unicode_ci`, description LONGTEXT CHARACTER SET utf8 DEFAULT NULL COLLATE `utf8_unicode_ci`, visible TINYINT(1) NOT NULL, saleQuantity INT NOT NULL, currentStock INT NOT NULL, minimumStockLevel INT DEFAULT NULL, stopSellingStockLevel INT DEFAULT NULL, perishable TINYINT(1) NOT NULL, active TINYINT(1) NOT NULL, idCategory INT DEFAULT NULL, idUnitOfMeasurement INT DEFAULT NULL, isDeleted TINYINT(1) NOT NULL, thumbnail VARCHAR(255) CHARACTER SET utf8 DEFAULT NULL COLLATE `utf8_unicode_ci`, INDEX IDX_A8260157F38BF7F (idUnitOfMeasurement), INDEX IDX_A82601555EF339A (idCategory), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  49.         $this->addSql('CREATE TABLE recipes (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(100) CHARACTER SET utf8 NOT NULL COLLATE `utf8_unicode_ci`, idBaseProduct INT DEFAULT NULL, INDEX IDX_A369E2B5CDF9BDA3 (idBaseProduct), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  50.         $this->addSql('CREATE TABLE recipesSupplies (recipeId INT NOT NULL, supplyId INT NOT NULL, INDEX IDX_70EEA974AE911F1 (supplyId), INDEX IDX_70EEA976DCBA54 (recipeId), PRIMARY KEY(recipeId, supplyId)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  51.         $this->addSql('CREATE TABLE recipesBaseProducts (recipeId INT NOT NULL, baseProductId INT NOT NULL, INDEX IDX_717C1EECD0A3F23E (baseProductId), INDEX IDX_717C1EEC6DCBA54 (recipeId), PRIMARY KEY(recipeId, baseProductId)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  52.         $this->addSql('CREATE TABLE manufacturingProcesses (id INT AUTO_INCREMENT NOT NULL, date DATETIME NOT NULL, quantity INT NOT NULL, idRecipe INT DEFAULT NULL, INDEX IDX_E5F22B4FB99919AD (idRecipe), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  53.         $this->addSql('CREATE TABLE manufacturingProcessSupplies (id INT AUTO_INCREMENT NOT NULL, quantity INT NOT NULL, idSupply INT DEFAULT NULL, idManufacturingProcess INT DEFAULT NULL, INDEX IDX_4F694ED6B1083C16 (idSupply), INDEX IDX_4F694ED6D28A934B (idManufacturingProcess), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  54.         $this->addSql('CREATE TABLE product_item (id INT AUTO_INCREMENT NOT NULL, stock_item_id INT DEFAULT NULL, product_id INT DEFAULT NULL, quantity INT NOT NULL, INDEX IDX_92F307BFBC942FD (stock_item_id), INDEX IDX_92F307BF4584665A (product_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  55.         $this->addSql('CREATE TABLE manufacturingProcessIngredients (id INT AUTO_INCREMENT NOT NULL, quantity INT NOT NULL, waste INT NOT NULL, idBaseProduct INT DEFAULT NULL, idManufacturingProcess INT DEFAULT NULL, INDEX IDX_6CD02C2CCDF9BDA3 (idBaseProduct), INDEX IDX_6CD02C2CD28A934B (idManufacturingProcess), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
  56.         $this->addSql('ALTER TABLE supplyMovements ADD CONSTRAINT FK_3CC9DAEBB1083C16 FOREIGN KEY (idSupply) REFERENCES supplies (id)');
  57.         $this->addSql('ALTER TABLE supplyMovements ADD CONSTRAINT FK_3CC9DAEBC16759C7 FOREIGN KEY (idProvider) REFERENCES provider (id)');
  58.         $this->addSql('ALTER TABLE supplyMovements ADD CONSTRAINT FK_3CC9DAEBFE6E88D7 FOREIGN KEY (idUser) REFERENCES users (id)');
  59.         $this->addSql('ALTER TABLE baseProducts ADD CONSTRAINT FK_A82601555EF339A FOREIGN KEY (idCategory) REFERENCES productCategories (id)');
  60.         $this->addSql('ALTER TABLE baseProducts ADD CONSTRAINT FK_A8260157F38BF7F FOREIGN KEY (idUnitOfMeasurement) REFERENCES unitsOfMeasurement (id)');
  61.         $this->addSql('ALTER TABLE recipes ADD CONSTRAINT FK_A369E2B5CDF9BDA3 FOREIGN KEY (idBaseProduct) REFERENCES baseProducts (id)');
  62.         $this->addSql('ALTER TABLE recipesSupplies ADD CONSTRAINT FK_70EEA974AE911F1 FOREIGN KEY (supplyId) REFERENCES supplies (id)');
  63.         $this->addSql('ALTER TABLE recipesSupplies ADD CONSTRAINT FK_70EEA976DCBA54 FOREIGN KEY (recipeId) REFERENCES recipes (id)');
  64.         $this->addSql('ALTER TABLE recipesBaseProducts ADD CONSTRAINT FK_717C1EEC6DCBA54 FOREIGN KEY (recipeId) REFERENCES recipes (id)');
  65.         $this->addSql('ALTER TABLE recipesBaseProducts ADD CONSTRAINT FK_717C1EECD0A3F23E FOREIGN KEY (baseProductId) REFERENCES baseProducts (id)');
  66.         $this->addSql('ALTER TABLE manufacturingProcesses ADD CONSTRAINT FK_E5F22B4FB99919AD FOREIGN KEY (idRecipe) REFERENCES recipes (id)');
  67.         $this->addSql('ALTER TABLE manufacturingProcessSupplies ADD CONSTRAINT FK_4F694ED6B1083C16 FOREIGN KEY (idSupply) REFERENCES supplies (id)');
  68.         $this->addSql('ALTER TABLE manufacturingProcessSupplies ADD CONSTRAINT FK_4F694ED6D28A934B FOREIGN KEY (idManufacturingProcess) REFERENCES manufacturingProcesses (id)');
  69.         $this->addSql('ALTER TABLE product_item ADD CONSTRAINT FK_CBEADBBCCDF9BDA3 FOREIGN KEY (stock_item_id) REFERENCES baseProducts (id)');
  70.         $this->addSql('ALTER TABLE product_item ADD CONSTRAINT FK_CBEADBBCE3696E8E FOREIGN KEY (product_id) REFERENCES product (id)');
  71.         $this->addSql('ALTER TABLE manufacturingProcessIngredients ADD CONSTRAINT FK_6CD02C2CCDF9BDA3 FOREIGN KEY (idBaseProduct) REFERENCES baseProducts (id)');
  72.         $this->addSql('ALTER TABLE manufacturingProcessIngredients ADD CONSTRAINT FK_6CD02C2CD28A934B FOREIGN KEY (idManufacturingProcess) REFERENCES manufacturingProcesses (id)');
  73.     }
  74. }