<?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 Version20211210160033 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 adress (id INT AUTO_INCREMENT NOT NULL, rental_object_id INT DEFAULT NULL, client_id INT DEFAULT NULL, tenant_id INT DEFAULT NULL, street VARCHAR(255) DEFAULT NULL, street_number VARCHAR(10) DEFAULT NULL, zip VARCHAR(10) DEFAULT NULL, city VARCHAR(255) DEFAULT NULL, country VARCHAR(20) DEFAULT NULL, region VARCHAR(255) DEFAULT NULL, adress_type VARCHAR(20) DEFAULT NULL, UNIQUE INDEX UNIQ_5CECC7BE9CCD5124 (rental_object_id), INDEX IDX_5CECC7BE19EB6921 (client_id), INDEX IDX_5CECC7BE9033212A (tenant_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE default_streets (id INT AUTO_INCREMENT NOT NULL, zip VARCHAR(10) NOT NULL, street VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE default_zip (id INT AUTO_INCREMENT NOT NULL, zip VARCHAR(10) NOT NULL, town VARCHAR(255) NOT NULL, region VARCHAR(255) NOT NULL, county VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE emailadress (id INT AUTO_INCREMENT NOT NULL, emailadress VARCHAR(255) DEFAULT NULL, email_type VARCHAR(20) DEFAULT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE geschoss (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 phone (id INT AUTO_INCREMENT NOT NULL, client_id INT DEFAULT NULL, phone_numer VARCHAR(255) DEFAULT NULL, areacode VARCHAR(10) DEFAULT NULL, phone_type VARCHAR(20) DEFAULT NULL, INDEX IDX_444F97DD19EB6921 (client_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE rental_object (id INT AUTO_INCREMENT NOT NULL, type_id INT NOT NULL, created_by_id INT NOT NULL, updated_by_id INT DEFAULT NULL, client_id INT NOT NULL, created DATETIME NOT NULL, updated DATETIME DEFAULT NULL, deleted TINYINT(1) NOT NULL, description VARCHAR(255) NOT NULL, rental_area VARCHAR(20) DEFAULT NULL, INDEX IDX_9883BF8BC54C8C93 (type_id), INDEX IDX_9883BF8BB03A8386 (created_by_id), INDEX IDX_9883BF8B896DBBDE (updated_by_id), INDEX IDX_9883BF8B19EB6921 (client_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE rental_object_type (id INT AUTO_INCREMENT NOT NULL, created_by_id INT NOT NULL, updated_by_id INT DEFAULT NULL, image_id INT DEFAULT NULL, name VARCHAR(255) NOT NULL, created DATETIME NOT NULL, updated DATETIME DEFAULT NULL, area VARCHAR(50) NOT NULL, INDEX IDX_8375DB6B03A8386 (created_by_id), INDEX IDX_8375DB6896DBBDE (updated_by_id), INDEX IDX_8375DB63DA5256D (image_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE rental_unit (id INT AUTO_INCREMENT NOT NULL, created_by_id INT NOT NULL, rental_object_id INT NOT NULL, name VARCHAR(255) NOT NULL, created DATETIME NOT NULL, reantal_area VARCHAR(255) NOT NULL, geschoss VARCHAR(255) NOT NULL, etage INT NOT NULL, lage VARCHAR(255) NOT NULL, INDEX IDX_53F75393B03A8386 (created_by_id), INDEX IDX_53F753939CCD5124 (rental_object_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE tenant (id INT AUTO_INCREMENT NOT NULL, rental_unit_id INT DEFAULT NULL, rental_object_id INT DEFAULT NULL, firstname VARCHAR(255) NOT NULL, lastname VARCHAR(255) NOT NULL, salutation VARCHAR(20) NOT NULL, INDEX IDX_4E59C4622B5BAAE2 (rental_unit_id), INDEX IDX_4E59C4629CCD5124 (rental_object_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE uploaded_file (id INT AUTO_INCREMENT NOT NULL, created DATETIME NOT NULL, filepath VARCHAR(255) NOT NULL, filename VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user_layout (id INT AUTO_INCREMENT NOT NULL, user_id INT NOT NULL, template_type VARCHAR(30) NOT NULL, UNIQUE INDEX UNIQ_5F6870DFA76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE adress ADD CONSTRAINT FK_5CECC7BE9CCD5124 FOREIGN KEY (rental_object_id) REFERENCES rental_object (id)');
$this->addSql('ALTER TABLE adress ADD CONSTRAINT FK_5CECC7BE19EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE adress ADD CONSTRAINT FK_5CECC7BE9033212A FOREIGN KEY (tenant_id) REFERENCES tenant (id)');
$this->addSql('ALTER TABLE phone ADD CONSTRAINT FK_444F97DD19EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE rental_object ADD CONSTRAINT FK_9883BF8BC54C8C93 FOREIGN KEY (type_id) REFERENCES rental_object_type (id)');
$this->addSql('ALTER TABLE rental_object ADD CONSTRAINT FK_9883BF8BB03A8386 FOREIGN KEY (created_by_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE rental_object ADD CONSTRAINT FK_9883BF8B896DBBDE FOREIGN KEY (updated_by_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE rental_object ADD CONSTRAINT FK_9883BF8B19EB6921 FOREIGN KEY (client_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE rental_object_type ADD CONSTRAINT FK_8375DB6B03A8386 FOREIGN KEY (created_by_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE rental_object_type ADD CONSTRAINT FK_8375DB6896DBBDE FOREIGN KEY (updated_by_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE rental_object_type ADD CONSTRAINT FK_8375DB63DA5256D FOREIGN KEY (image_id) REFERENCES uploaded_file (id)');
$this->addSql('ALTER TABLE rental_unit ADD CONSTRAINT FK_53F75393B03A8386 FOREIGN KEY (created_by_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE rental_unit ADD CONSTRAINT FK_53F753939CCD5124 FOREIGN KEY (rental_object_id) REFERENCES rental_object (id)');
$this->addSql('ALTER TABLE tenant ADD CONSTRAINT FK_4E59C4622B5BAAE2 FOREIGN KEY (rental_unit_id) REFERENCES rental_unit (id)');
$this->addSql('ALTER TABLE tenant ADD CONSTRAINT FK_4E59C4629CCD5124 FOREIGN KEY (rental_object_id) REFERENCES rental_object (id)');
$this->addSql('ALTER TABLE user_layout ADD CONSTRAINT FK_5F6870DFA76ED395 FOREIGN KEY (user_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE user CHANGE roles roles LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\'');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE adress DROP FOREIGN KEY FK_5CECC7BE9CCD5124');
$this->addSql('ALTER TABLE rental_unit DROP FOREIGN KEY FK_53F753939CCD5124');
$this->addSql('ALTER TABLE tenant DROP FOREIGN KEY FK_4E59C4629CCD5124');
$this->addSql('ALTER TABLE rental_object DROP FOREIGN KEY FK_9883BF8BC54C8C93');
$this->addSql('ALTER TABLE tenant DROP FOREIGN KEY FK_4E59C4622B5BAAE2');
$this->addSql('ALTER TABLE adress DROP FOREIGN KEY FK_5CECC7BE9033212A');
$this->addSql('ALTER TABLE rental_object_type DROP FOREIGN KEY FK_8375DB63DA5256D');
$this->addSql('DROP TABLE adress');
$this->addSql('DROP TABLE default_streets');
$this->addSql('DROP TABLE default_zip');
$this->addSql('DROP TABLE emailadress');
$this->addSql('DROP TABLE geschoss');
$this->addSql('DROP TABLE phone');
$this->addSql('DROP TABLE rental_object');
$this->addSql('DROP TABLE rental_object_type');
$this->addSql('DROP TABLE rental_unit');
$this->addSql('DROP TABLE tenant');
$this->addSql('DROP TABLE uploaded_file');
$this->addSql('DROP TABLE user_layout');
$this->addSql('ALTER TABLE user CHANGE roles roles LONGTEXT CHARACTER SET utf8mb4 NOT NULL COLLATE `utf8mb4_bin`');
}
}