<?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 Version20240418105701 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 panier (id INT AUTO_INCREMENT NOT NULL, client_id_id INT DEFAULT NULL, date_creation DATETIME DEFAULT NULL, date_maj DATETIME DEFAULT NULL, nb_produit INT NOT NULL, prix_total DOUBLE PRECISION NOT NULL, commande TINYINT(1) NOT NULL, INDEX IDX_24CC0DF2DC2902E0 (client_id_id), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_general_ci` ENGINE = InnoDB');
$this->addSql('CREATE TABLE panier_produits (id_panier_id INT NOT NULL, id_produit_id INT NOT NULL, nb_produit INT NOT NULL, prix_total DOUBLE PRECISION NOT NULL, INDEX IDX_2468D6FE77482E5B (id_panier_id), INDEX IDX_2468D6FEAABEFE2C (id_produit_id), PRIMARY KEY(id_panier_id, id_produit_id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_general_ci` ENGINE = InnoDB');
$this->addSql('ALTER TABLE panier ADD CONSTRAINT FK_24CC0DF2DC2902E0 FOREIGN KEY (client_id_id) REFERENCES client (id)');
$this->addSql('ALTER TABLE panier_produits ADD CONSTRAINT FK_2468D6FE77482E5B FOREIGN KEY (id_panier_id) REFERENCES panier (id)');
$this->addSql('ALTER TABLE panier_produits ADD CONSTRAINT FK_2468D6FEAABEFE2C FOREIGN KEY (id_produit_id) REFERENCES produit (id)');
$this->addSql('DROP TABLE commande_produits');
$this->addSql('ALTER TABLE commande ADD panier_id_id INT DEFAULT NULL');
$this->addSql('ALTER TABLE commande ADD CONSTRAINT FK_6EEAA67D5669B1EA FOREIGN KEY (panier_id_id) REFERENCES panier (id)');
$this->addSql('CREATE UNIQUE INDEX UNIQ_6EEAA67D5669B1EA ON commande (panier_id_id)');
}
public function down(Schema $schema): void
{
// this down() migration is auto-generated, please modify it to your needs
$this->addSql('ALTER TABLE commande DROP FOREIGN KEY FK_6EEAA67D5669B1EA');
$this->addSql('ALTER TABLE panier_produits DROP FOREIGN KEY FK_2468D6FE77482E5B');
$this->addSql('CREATE TABLE commande_produits (id_commande_id INT NOT NULL, id_produit_id INT NOT NULL, nb_produit INT NOT NULL, prix_total DOUBLE PRECISION NOT NULL, INDEX IDX_680DC7169AF8E3A3 (id_commande_id), INDEX IDX_680DC716AABEFE2C (id_produit_id), PRIMARY KEY(id_commande_id, id_produit_id)) DEFAULT CHARACTER SET utf8 COLLATE `utf8_unicode_ci` ENGINE = InnoDB COMMENT = \'\' ');
$this->addSql('ALTER TABLE commande_produits ADD CONSTRAINT FK_680DC7169AF8E3A3 FOREIGN KEY (id_commande_id) REFERENCES commande (id) ON UPDATE NO ACTION ON DELETE NO ACTION');
$this->addSql('ALTER TABLE commande_produits ADD CONSTRAINT FK_680DC716AABEFE2C FOREIGN KEY (id_produit_id) REFERENCES produit (id) ON UPDATE NO ACTION ON DELETE NO ACTION');
$this->addSql('DROP TABLE panier');
$this->addSql('DROP TABLE panier_produits');
$this->addSql('DROP INDEX UNIQ_6EEAA67D5669B1EA ON commande');
$this->addSql('ALTER TABLE commande DROP panier_id_id');
}
}