<?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 Version20250420160620 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 wt_column (id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', template_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', creator_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', auto_complete TINYINT(1) NOT NULL, body LONGTEXT DEFAULT NULL, color VARCHAR(255) DEFAULT NULL, name VARCHAR(255) NOT NULL, sort_order INT DEFAULT NULL, created_at DATETIME NOT NULL, modified_at DATETIME NOT NULL, INDEX IDX_43DD9A5B61220EA6 (creator_id), INDEX idx_template (template_id), INDEX idx_name (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE wt_task (id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', template_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', column_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', creator_id CHAR(36) DEFAULT NULL COMMENT \'(DC2Type:uuid)\', all_day TINYINT(1) NOT NULL, start_offset INT DEFAULT NULL, end_offset INT DEFAULT NULL, start_time TIME DEFAULT NULL, end_time TIME DEFAULT NULL, reminder VARCHAR(255) DEFAULT NULL, priority VARCHAR(255) DEFAULT NULL, items LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', body LONGTEXT DEFAULT NULL, name VARCHAR(255) NOT NULL, sort_order INT DEFAULT NULL, created_at DATETIME NOT NULL, modified_at DATETIME NOT NULL, INDEX IDX_ED69222FBE8E8ED5 (column_id), INDEX IDX_ED69222F61220EA6 (creator_id), INDEX idx_template (template_id), INDEX idx_name (name), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE wt_task_tag (task_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', tag_id CHAR(36) NOT NULL COMMENT \'(DC2Type:uuid)\', INDEX IDX_E7FECDB48DB60186 (task_id), INDEX IDX_E7FECDB4BAD26311 (tag_id), PRIMARY KEY(task_id, tag_id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE wt_column ADD CONSTRAINT FK_43DD9A5B5DA0FB8 FOREIGN KEY (template_id) REFERENCES w_template (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE wt_column ADD CONSTRAINT FK_43DD9A5B61220EA6 FOREIGN KEY (creator_id) REFERENCES user (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE wt_task ADD CONSTRAINT FK_ED69222F5DA0FB8 FOREIGN KEY (template_id) REFERENCES w_template (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE wt_task ADD CONSTRAINT FK_ED69222FBE8E8ED5 FOREIGN KEY (column_id) REFERENCES wt_column (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE wt_task ADD CONSTRAINT FK_ED69222F61220EA6 FOREIGN KEY (creator_id) REFERENCES user (id) ON DELETE SET NULL');
$this->addSql('ALTER TABLE wt_task_tag ADD CONSTRAINT FK_E7FECDB48DB60186 FOREIGN KEY (task_id) REFERENCES wt_task (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE wt_task_tag ADD CONSTRAINT FK_E7FECDB4BAD26311 FOREIGN KEY (tag_id) REFERENCES tag (id) ON DELETE CASCADE');
$this->addSql('ALTER TABLE w_template ADD sort_order INT DEFAULT NULL, DROP columns, DROP documents, DROP events, DROP tasks, DROP whiteboards, DROP stream');
$this->addSql('ALTER TABLE w_template RENAME INDEX idx_creator TO IDX_A8B6B8DA61220EA6');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE wt_column DROP FOREIGN KEY FK_43DD9A5B5DA0FB8');
$this->addSql('ALTER TABLE wt_column DROP FOREIGN KEY FK_43DD9A5B61220EA6');
$this->addSql('ALTER TABLE wt_task DROP FOREIGN KEY FK_ED69222F5DA0FB8');
$this->addSql('ALTER TABLE wt_task DROP FOREIGN KEY FK_ED69222FBE8E8ED5');
$this->addSql('ALTER TABLE wt_task DROP FOREIGN KEY FK_ED69222F61220EA6');
$this->addSql('ALTER TABLE wt_task_tag DROP FOREIGN KEY FK_E7FECDB48DB60186');
$this->addSql('ALTER TABLE wt_task_tag DROP FOREIGN KEY FK_E7FECDB4BAD26311');
$this->addSql('DROP TABLE wt_column');
$this->addSql('DROP TABLE wt_task');
$this->addSql('DROP TABLE wt_task_tag');
$this->addSql('ALTER TABLE w_template ADD columns LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', ADD documents LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', ADD events LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', ADD tasks LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', ADD whiteboards LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', ADD stream LONGTEXT DEFAULT NULL COMMENT \'(DC2Type:array)\', DROP sort_order');
$this->addSql('ALTER TABLE w_template RENAME INDEX idx_a8b6b8da61220ea6 TO idx_creator');
}
}