<?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 Version20220530155222 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 agent (id INT AUTO_INCREMENT NOT NULL, lastname VARCHAR(255) DEFAULT NULL, firstname VARCHAR(255) NOT NULL, email VARCHAR(255) NOT NULL, first_connexion TINYINT(1) NOT NULL, password VARCHAR(255) NOT NULL, PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE compte_rendu (id INT AUTO_INCREMENT NOT NULL, intervention_id INT NOT NULL, conformite TINYINT(1) NOT NULL, remarques VARCHAR(255) DEFAULT NULL, images VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_D39E69D28EAE3863 (intervention_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE contrat (id INT AUTO_INCREMENT NOT NULL, user_id INT NOT NULL, pdf VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_60349993A76ED395 (user_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE intervention (id INT AUTO_INCREMENT NOT NULL, id_contrat_id INT DEFAULT NULL, id_cr_id INT DEFAULT NULL, id_client_id INT NOT NULL, id_orga_id INT DEFAULT NULL, agent_id INT DEFAULT NULL, date_start DATETIME NOT NULL, date_end DATETIME NOT NULL, adress VARCHAR(255) NOT NULL, statut SMALLINT DEFAULT 0, UNIQUE INDEX UNIQ_D11814ABBDA986C8 (id_contrat_id), UNIQUE INDEX UNIQ_D11814ABAE03CF85 (id_cr_id), INDEX IDX_D11814AB99DED506 (id_client_id), UNIQUE INDEX UNIQ_D11814AB496DC1D1 (id_orga_id), INDEX IDX_D11814AB3414710B (agent_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE reclamation (id INT AUTO_INCREMENT NOT NULL, intervention_id INT NOT NULL, client_id INT NOT NULL, raisons VARCHAR(255) NOT NULL, images VARCHAR(255) NOT NULL, statut TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_CE6064048EAE3863 (intervention_id), UNIQUE INDEX UNIQ_CE60640419EB6921 (client_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE user (id INT AUTO_INCREMENT NOT NULL, email VARCHAR(180) NOT NULL, roles LONGTEXT NOT NULL COMMENT \'(DC2Type:json)\', password VARCHAR(255) NOT NULL, lastname VARCHAR(255) NOT NULL, firstname VARCHAR(255) NOT NULL, adress VARCHAR(255) DEFAULT NULL, phone VARCHAR(255) DEFAULT NULL, logo VARCHAR(255) DEFAULT NULL, UNIQUE INDEX UNIQ_8D93D649E7927C74 (email), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE `utf8mb4_unicode_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE compte_rendu ADD CONSTRAINT FK_D39E69D28EAE3863 FOREIGN KEY (intervention_id) REFERENCES intervention (id)');
$this->addSql('ALTER TABLE contrat ADD CONSTRAINT FK_60349993A76ED395 FOREIGN KEY (user_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE intervention ADD CONSTRAINT FK_D11814ABBDA986C8 FOREIGN KEY (id_contrat_id) REFERENCES contrat (id)');
$this->addSql('ALTER TABLE intervention ADD CONSTRAINT FK_D11814ABAE03CF85 FOREIGN KEY (id_cr_id) REFERENCES compte_rendu (id)');
$this->addSql('ALTER TABLE intervention ADD CONSTRAINT FK_D11814AB99DED506 FOREIGN KEY (id_client_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE intervention ADD CONSTRAINT FK_D11814AB496DC1D1 FOREIGN KEY (id_orga_id) REFERENCES user (id)');
$this->addSql('ALTER TABLE intervention ADD CONSTRAINT FK_D11814AB3414710B FOREIGN KEY (agent_id) REFERENCES agent (id)');
$this->addSql('ALTER TABLE reclamation ADD CONSTRAINT FK_CE6064048EAE3863 FOREIGN KEY (intervention_id) REFERENCES intervention (id)');
$this->addSql('ALTER TABLE reclamation ADD CONSTRAINT FK_CE60640419EB6921 FOREIGN KEY (client_id) REFERENCES user (id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE intervention DROP FOREIGN KEY FK_D11814AB3414710B');
$this->addSql('ALTER TABLE intervention DROP FOREIGN KEY FK_D11814ABAE03CF85');
$this->addSql('ALTER TABLE intervention DROP FOREIGN KEY FK_D11814ABBDA986C8');
$this->addSql('ALTER TABLE compte_rendu DROP FOREIGN KEY FK_D39E69D28EAE3863');
$this->addSql('ALTER TABLE reclamation DROP FOREIGN KEY FK_CE6064048EAE3863');
$this->addSql('ALTER TABLE contrat DROP FOREIGN KEY FK_60349993A76ED395');
$this->addSql('ALTER TABLE intervention DROP FOREIGN KEY FK_D11814AB99DED506');
$this->addSql('ALTER TABLE intervention DROP FOREIGN KEY FK_D11814AB496DC1D1');
$this->addSql('ALTER TABLE reclamation DROP FOREIGN KEY FK_CE60640419EB6921');
$this->addSql('DROP TABLE agent');
$this->addSql('DROP TABLE compte_rendu');
$this->addSql('DROP TABLE contrat');
$this->addSql('DROP TABLE intervention');
$this->addSql('DROP TABLE reclamation');
$this->addSql('DROP TABLE user');
}
}