<?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 Version20240402151411 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 mail_tag (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, visible_name VARCHAR(255) NOT NULL, description LONGTEXT DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE workflow (id INT AUTO_INCREMENT NOT NULL, country_id INT NOT NULL, frequency_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, description LONGTEXT DEFAULT NULL, service VARCHAR(255) DEFAULT NULL, workflow_schema LONGTEXT DEFAULT NULL, slug VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, INDEX IDX_65C59816F92F3E70 (country_id), INDEX IDX_65C5981694879022 (frequency_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE `workflow_action` (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, visible_name VARCHAR(255) NOT NULL, operation LONGTEXT NOT NULL, description LONGTEXT DEFAULT NULL, slug VARCHAR(255) DEFAULT NULL, properties LONGTEXT DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE `workflow_action_status` (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, visible_name VARCHAR(255) NOT NULL, slug VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE workflow_frequency (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, visible_name VARCHAR(255) NOT NULL, slug VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE `workflow_trigger` (id INT AUTO_INCREMENT NOT NULL, name VARCHAR(255) NOT NULL, visible_name VARCHAR(255) NOT NULL, operation LONGTEXT NOT NULL, description LONGTEXT DEFAULT NULL, slug VARCHAR(255) DEFAULT NULL, created_at DATETIME NOT NULL, updated_at DATETIME NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE workflow ADD CONSTRAINT FK_65C59816F92F3E70 FOREIGN KEY (country_id) REFERENCES country (id)');
$this->addSql('ALTER TABLE workflow ADD CONSTRAINT FK_65C5981694879022 FOREIGN KEY (frequency_id) REFERENCES workflow_frequency (id)');
$this->addSql('ALTER TABLE master_data_collection_form ADD workflow_id INT DEFAULT NULL');
$this->addSql('ALTER TABLE master_data_collection_form ADD CONSTRAINT FK_50EC6102C7C2CBA FOREIGN KEY (workflow_id) REFERENCES workflow (id)');
$this->addSql('CREATE INDEX IDX_50EC6102C7C2CBA ON master_data_collection_form (workflow_id)');
$this->addSql('ALTER TABLE project ADD workflow_schema LONGTEXT DEFAULT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE master_data_collection_form DROP FOREIGN KEY FK_50EC6102C7C2CBA');
$this->addSql('ALTER TABLE workflow DROP FOREIGN KEY FK_65C5981694879022');
$this->addSql('DROP TABLE mail_tag');
$this->addSql('DROP TABLE workflow');
$this->addSql('DROP TABLE `workflow_action`');
$this->addSql('DROP TABLE `workflow_action_status`');
$this->addSql('DROP TABLE workflow_frequency');
$this->addSql('DROP TABLE `workflow_trigger`');
$this->addSql('DROP INDEX IDX_50EC6102C7C2CBA ON master_data_collection_form');
$this->addSql('ALTER TABLE master_data_collection_form DROP workflow_id');
$this->addSql('ALTER TABLE project DROP workflow_schema');
}
}