<?php
declare(strict_types=1);
namespace DoctrineMigrations;
use Doctrine\DBAL\Schema\Schema;
use Doctrine\Migrations\AbstractMigration;
/**
* Auto-generated Migration: Please modify to your needs!
*/
final class Version20220215163156 extends AbstractMigration
{
public function getDescription(): string
{
return '';
}
public function up(Schema $schema): void
{
// this up() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE TABLE bom (id INT AUTO_INCREMENT NOT NULL, product_id INT NOT NULL, created DATETIME NOT NULL, updated DATETIME NOT NULL, UNIQUE INDEX UNIQ_6574ACD14584665A (product_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE bom_bomrow (bom_id INT NOT NULL, bomrow_id INT NOT NULL, INDEX IDX_C75290A0BFD0DC92 (bom_id), INDEX IDX_C75290A04556EAEF (bomrow_id), PRIMARY KEY(bom_id, bomrow_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE bomrow (id INT AUTO_INCREMENT NOT NULL, product_id INT NOT NULL, quantity INT NOT NULL, created DATETIME NOT NULL, updated DATETIME NOT NULL, INDEX IDX_5DA1EF794584665A (product_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE product (id INT AUTO_INCREMENT NOT NULL, status INT NOT NULL, created DATETIME NOT NULL, updated DATETIME NOT NULL, length INT DEFAULT NULL, width INT DEFAULT NULL, depth INT DEFAULT NULL, weight INT DEFAULT NULL, name VARCHAR(255) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE product_arca (id INT AUTO_INCREMENT NOT NULL, product_id INT NOT NULL, UNIQUE INDEX UNIQ_C26B84F4584665A (product_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE product_ps (id INT AUTO_INCREMENT NOT NULL, product_id INT NOT NULL, INDEX IDX_5D574A854584665A (product_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE tag (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, created DATETIME NOT NULL, updated DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE tag_tag (tag_source INT NOT NULL, tag_target INT NOT NULL, INDEX IDX_2572D81B6CB365F (tag_source), INDEX IDX_2572D81AF2E66D0 (tag_target), PRIMARY KEY(tag_source, tag_target)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE tag_product (tag_id INT NOT NULL, product_id INT NOT NULL, INDEX IDX_E17B2907BAD26311 (tag_id), INDEX IDX_E17B29074584665A (product_id), PRIMARY KEY(tag_id, product_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE messenger_messages (id BIGINT AUTO_INCREMENT NOT NULL, body LONGTEXT NOT NULL, headers LONGTEXT NOT NULL, queue_name VARCHAR(255) NOT NULL, created_at DATETIME NOT NULL, available_at DATETIME NOT NULL, delivered_at DATETIME DEFAULT NULL, INDEX IDX_75EA56E016BA31DB (delivered_at), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE bom ADD CONSTRAINT FK_6574ACD14584665A FOREIGN KEY (product_id) REFERENCES product (id)');
$this->addSql('ALTER TABLE bom_bomrow ADD CONSTRAINT FK_C75290A0BFD0DC92 FOREIGN KEY (bom_id) REFERENCES bom (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE bom_bomrow ADD CONSTRAINT FK_C75290A04556EAEF FOREIGN KEY (bomrow_id) REFERENCES bomrow (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE bomrow ADD CONSTRAINT FK_5DA1EF794584665A FOREIGN KEY (product_id) REFERENCES product (id)');
$this->addSql('ALTER TABLE product_arca ADD CONSTRAINT FK_C26B84F4584665A FOREIGN KEY (product_id) REFERENCES product (id)');
$this->addSql('ALTER TABLE product_ps ADD CONSTRAINT FK_5D574A854584665A FOREIGN KEY (product_id) REFERENCES product (id)');
$this->addSql('ALTER TABLE tag_tag ADD CONSTRAINT FK_2572D81B6CB365F FOREIGN KEY (tag_source) REFERENCES tag (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE tag_tag ADD CONSTRAINT FK_2572D81AF2E66D0 FOREIGN KEY (tag_target) REFERENCES tag (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE tag_product ADD CONSTRAINT FK_E17B2907BAD26311 FOREIGN KEY (tag_id) REFERENCES tag (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE tag_product ADD CONSTRAINT FK_E17B29074584665A FOREIGN KEY (product_id) REFERENCES product (id) ON DELETE CASCADE');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE bom_bomrow DROP FOREIGN KEY FK_C75290A0BFD0DC92');
$this->addSql('ALTER TABLE bom_bomrow DROP FOREIGN KEY FK_C75290A04556EAEF');
$this->addSql('ALTER TABLE bom DROP FOREIGN KEY FK_6574ACD14584665A');
$this->addSql('ALTER TABLE bomrow DROP FOREIGN KEY FK_5DA1EF794584665A');
$this->addSql('ALTER TABLE product_arca DROP FOREIGN KEY FK_C26B84F4584665A');
$this->addSql('ALTER TABLE product_ps DROP FOREIGN KEY FK_5D574A854584665A');
$this->addSql('ALTER TABLE tag_product DROP FOREIGN KEY FK_E17B29074584665A');
$this->addSql('ALTER TABLE tag_tag DROP FOREIGN KEY FK_2572D81B6CB365F');
$this->addSql('ALTER TABLE tag_tag DROP FOREIGN KEY FK_2572D81AF2E66D0');
$this->addSql('ALTER TABLE tag_product DROP FOREIGN KEY FK_E17B2907BAD26311');
$this->addSql('DROP TABLE bom');
$this->addSql('DROP TABLE bom_bomrow');
$this->addSql('DROP TABLE bomrow');
$this->addSql('DROP TABLE product');
$this->addSql('DROP TABLE product_arca');
$this->addSql('DROP TABLE product_ps');
$this->addSql('DROP TABLE tag');
$this->addSql('DROP TABLE tag_tag');
$this->addSql('DROP TABLE tag_product');
$this->addSql('DROP TABLE messenger_messages');
}
}