<?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 Version20211207001349 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 conception (id INT AUTO_INCREMENT NOT NULL, thumbnail_id INT NOT NULL, main_service_id INT NOT NULL, title VARCHAR(255) NOT NULL, description LONGTEXT NOT NULL, featured TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_6F60FFF4FDFF2E92 (thumbnail_id), INDEX IDX_6F60FFF4D5A4DD85 (main_service_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE conception_service (conception_id INT NOT NULL, service_id INT NOT NULL, INDEX IDX_6F54C4E9A1A8279 (conception_id), INDEX IDX_6F54C4E9ED5CA9E6 (service_id), PRIMARY KEY(conception_id, service_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE conception_translations (id INT AUTO_INCREMENT NOT NULL, locale VARCHAR(8) NOT NULL, object_class VARCHAR(191) NOT NULL, field VARCHAR(32) NOT NULL, foreign_key VARCHAR(64) NOT NULL, content LONGTEXT DEFAULT NULL, INDEX conception_translation_idx (locale, object_class, field, foreign_key), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE locale (id INT AUTO_INCREMENT NOT NULL, code VARCHAR(7) NOT NULL, name VARCHAR(45) NOT NULL, is_default TINYINT(1) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE media_object (id INT AUTO_INCREMENT NOT NULL, conception_id INT DEFAULT NULL, file_path VARCHAR(255) DEFAULT NULL, INDEX IDX_14D43132A1A8279 (conception_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE service (id INT AUTO_INCREMENT NOT NULL, category_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, description LONGTEXT NOT NULL, logo VARCHAR(255) DEFAULT NULL, slug VARCHAR(255) NOT NULL, is_main TINYINT(1) NOT NULL, INDEX IDX_E19D9AD212469DE2 (category_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE service_category (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE service_category_translations (id INT AUTO_INCREMENT NOT NULL, locale VARCHAR(8) NOT NULL, object_class VARCHAR(191) NOT NULL, field VARCHAR(32) NOT NULL, foreign_key VARCHAR(64) NOT NULL, content LONGTEXT DEFAULT NULL, INDEX service_category_translation_idx (locale, object_class, field, foreign_key), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE service_translations (id INT AUTO_INCREMENT NOT NULL, locale VARCHAR(8) NOT NULL, object_class VARCHAR(191) NOT NULL, field VARCHAR(32) NOT NULL, foreign_key VARCHAR(64) NOT NULL, content LONGTEXT DEFAULT NULL, INDEX service_translation_idx (locale, object_class, field, foreign_key), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE conception ADD CONSTRAINT FK_6F60FFF4FDFF2E92 FOREIGN KEY (thumbnail_id) REFERENCES media_object (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE conception ADD CONSTRAINT FK_6F60FFF4D5A4DD85 FOREIGN KEY (main_service_id) REFERENCES service (id)');
$this->addSql('ALTER TABLE conception_service ADD CONSTRAINT FK_6F54C4E9A1A8279 FOREIGN KEY (conception_id) REFERENCES conception (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE conception_service ADD CONSTRAINT FK_6F54C4E9ED5CA9E6 FOREIGN KEY (service_id) REFERENCES service (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE media_object ADD CONSTRAINT FK_14D43132A1A8279 FOREIGN KEY (conception_id) REFERENCES conception (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE service ADD CONSTRAINT FK_E19D9AD212469DE2 FOREIGN KEY (category_id) REFERENCES service_category (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE conception_service DROP FOREIGN KEY FK_6F54C4E9A1A8279');
$this->addSql('ALTER TABLE media_object DROP FOREIGN KEY FK_14D43132A1A8279');
$this->addSql('ALTER TABLE conception DROP FOREIGN KEY FK_6F60FFF4FDFF2E92');
$this->addSql('ALTER TABLE conception DROP FOREIGN KEY FK_6F60FFF4D5A4DD85');
$this->addSql('ALTER TABLE conception_service DROP FOREIGN KEY FK_6F54C4E9ED5CA9E6');
$this->addSql('ALTER TABLE service DROP FOREIGN KEY FK_E19D9AD212469DE2');
$this->addSql('DROP TABLE conception');
$this->addSql('DROP TABLE conception_service');
$this->addSql('DROP TABLE conception_translations');
$this->addSql('DROP TABLE locale');
$this->addSql('DROP TABLE media_object');
$this->addSql('DROP TABLE service');
$this->addSql('DROP TABLE service_category');
$this->addSql('DROP TABLE service_category_translations');
$this->addSql('DROP TABLE service_translations');
}
}