feat(Devis): Ajoute relation one-to-one avec Contrats et met à jour l'entité.

 feat(contrats): Ajoute le formulaire de création de contrats.
📝 feat(Contrats): Crée le type de formulaire ContratsType.
 feat(Customer): Ajoute la relation one-to-many avec Contrats.
 feat(contrats): Ajoute la vue de création de contrats.
This commit is contained in:
Serreau Jovann
2026-01-21 15:41:26 +01:00
parent b4e4712b6d
commit f9280db146
15 changed files with 1114 additions and 2 deletions

View File

@@ -0,0 +1,39 @@
<?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 Version20260121135907 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 contrats (id SERIAL NOT NULL, customer_id INT DEFAULT NULL, devis_id INT DEFAULT NULL, num_reservation VARCHAR(255) NOT NULL, create_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, PRIMARY KEY(id))');
$this->addSql('CREATE INDEX IDX_7268396C9395C3F3 ON contrats (customer_id)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_7268396C41DEFADA ON contrats (devis_id)');
$this->addSql('COMMENT ON COLUMN contrats.create_at IS \'(DC2Type:datetime_immutable)\'');
$this->addSql('ALTER TABLE contrats ADD CONSTRAINT FK_7268396C9395C3F3 FOREIGN KEY (customer_id) REFERENCES customer (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
$this->addSql('ALTER TABLE contrats ADD CONSTRAINT FK_7268396C41DEFADA FOREIGN KEY (devis_id) REFERENCES devis (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('ALTER TABLE contrats DROP CONSTRAINT FK_7268396C9395C3F3');
$this->addSql('ALTER TABLE contrats DROP CONSTRAINT FK_7268396C41DEFADA');
$this->addSql('DROP TABLE contrats');
}
}

View File

@@ -0,0 +1,40 @@
<?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 Version20260121140314 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('ALTER TABLE contrats ADD adress_event VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE contrats ADD adress2_event VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE contrats ADD adress3_event VARCHAR(255) DEFAULT NULL');
$this->addSql('ALTER TABLE contrats ADD zip_code_event VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE contrats ADD town_event VARCHAR(255) NOT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('ALTER TABLE contrats DROP adress_event');
$this->addSql('ALTER TABLE contrats DROP adress2_event');
$this->addSql('ALTER TABLE contrats DROP adress3_event');
$this->addSql('ALTER TABLE contrats DROP zip_code_event');
$this->addSql('ALTER TABLE contrats DROP town_event');
}
}

View File

@@ -0,0 +1,44 @@
<?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 Version20260121140558 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('ALTER TABLE contrats ADD type VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE contrats ADD details TEXT NOT NULL');
$this->addSql('ALTER TABLE contrats ADD type_sol VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE contrats ADD pente VARCHAR(255) NOT NULL');
$this->addSql('ALTER TABLE contrats ADD access TEXT NOT NULL');
$this->addSql('ALTER TABLE contrats ADD distance_power DOUBLE PRECISION NOT NULL');
$this->addSql('ALTER TABLE contrats ADD notes TEXT NOT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('ALTER TABLE contrats DROP type');
$this->addSql('ALTER TABLE contrats DROP details');
$this->addSql('ALTER TABLE contrats DROP type_sol');
$this->addSql('ALTER TABLE contrats DROP pente');
$this->addSql('ALTER TABLE contrats DROP access');
$this->addSql('ALTER TABLE contrats DROP distance_power');
$this->addSql('ALTER TABLE contrats DROP notes');
}
}

View File

@@ -0,0 +1,39 @@
<?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 Version20260121141506 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 contrats_payments (id SERIAL NOT NULL, contrat_id INT DEFAULT NULL, type VARCHAR(255) NOT NULL, payment_id VARCHAR(255) NOT NULL, state VARCHAR(255) NOT NULL, PRIMARY KEY(id))');
$this->addSql('CREATE INDEX IDX_95744AFC1823061F ON contrats_payments (contrat_id)');
$this->addSql('ALTER TABLE contrats_payments ADD CONSTRAINT FK_95744AFC1823061F FOREIGN KEY (contrat_id) REFERENCES contrats (id) NOT DEFERRABLE INITIALLY IMMEDIATE');
$this->addSql('ALTER TABLE contrats ADD is_signed BOOLEAN NOT NULL');
$this->addSql('ALTER TABLE contrats ADD sign_id VARCHAR(255) DEFAULT NULL');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('ALTER TABLE contrats_payments DROP CONSTRAINT FK_95744AFC1823061F');
$this->addSql('DROP TABLE contrats_payments');
$this->addSql('ALTER TABLE contrats DROP is_signed');
$this->addSql('ALTER TABLE contrats DROP sign_id');
}
}

View File

@@ -0,0 +1,38 @@
<?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 Version20260121143754 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 env_at (id SERIAL NOT NULL, PRIMARY KEY(id))');
$this->addSql('ALTER TABLE contrats ADD date_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL');
$this->addSql('ALTER TABLE contrats ADD end_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL');
$this->addSql('COMMENT ON COLUMN contrats.date_at IS \'(DC2Type:datetime_immutable)\'');
$this->addSql('COMMENT ON COLUMN contrats.end_at IS \'(DC2Type:datetime_immutable)\'');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('DROP TABLE env_at');
$this->addSql('ALTER TABLE contrats DROP date_at');
$this->addSql('ALTER TABLE contrats DROP end_at');
}
}

View File

@@ -0,0 +1,34 @@
<?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 Version20260121143811 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('DROP SEQUENCE env_at_id_seq CASCADE');
$this->addSql('DROP TABLE env_at');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('CREATE SCHEMA public');
$this->addSql('CREATE SEQUENCE env_at_id_seq INCREMENT BY 1 MINVALUE 1 START 1');
$this->addSql('CREATE TABLE env_at (id SERIAL NOT NULL, PRIMARY KEY(id))');
}
}